1.作业的基本信息
这个作业属于哪个课程 | 软件工程 |
---|---|
这个作业的要求在哪里 | 作业的要求 |
这个作业的目标 | 1. 提前熟悉markdown语法 2.阅读《构建之法》 3.撰写博客 4. 评估当前的自己 5.展望未来 6.关于未来展望的思维导图和学习路线 7.学习使用Git并尝试上传一个代码文件 |
其他参考文献 | 无 |
2.评估当前的自己
姓名 | 黄翊森 |
---|---|
头像 | ![]() |
兴趣爱好 | 唱歌、羽毛球、游戏 |
特长 | 刷机 |
成果和获奖经历 | 2021年广东工业大学校级三等奖学金 |
专业水平 | 编程语言:C语言、Java、Kotlin 开发软件:Android Studio、Visual Studio、IntelliJ IDEA 累计代码量:5000+ |
项目经历 | 学生信息管理系统 |
3.展望未来
3.1关于《构建之法》相关问题的思考
- 认真听老师讲课有时候是需要的,老师有时候讲的总是会有些自己学习领悟不到的东西,而且老师讲的知识点肯定会使学生更好的理解。同时,跟上老师的节奏,梳理自己的思路,才进步得更快。
- 但不是所有的老师都是负责任的,不是所有的老师都是值得我们尊敬的,上课认真听讲是衡量老师能力的最好体现,一个好老师,你不用强制大家认真听讲,学生自然而然会融入课堂当中。一个优秀的教师,无论教什么样的学生,他都不会走神。如果面对一个只会念PPT的老师,没有融入自己对课程的理解思考,我会选择自己在网上找资源进行学习,互联网时代知识是透明的,作为大学生也应该有自主学习的能力。
- 所以我觉得这个问题并没有一个准确的答案,而是得看是怎样的老师。
- 我觉得这个问题在不同人眼里会有不同的答案。
- 在我或者员工看来,写出的程序功能强大且稳定、bug少且易于维护的程序员就是好程序员。
- 而对于老板或者经理来说,能干活完成需求的就是好程序员。
- BUG一般指在软件运行中因为程序本身有错误而造成的功能不正常、死机、数据丢失、非正常中断等现象。
- 但我认为,软件的行为与用户的期望值不同可能是出于开发者与用户的期望并不一致,也可能是受运行环境等因素影响。
- 因此软件行为和用户期望不一致,并不能直接断定是程序本身的错误,也就不好直接定义为 Bug。
- 花费时间越多,并不一定代表工作量越高。
- 在我看来,工作量和花费的时间之间并没有直接的联系,对于一个程序员来说,花费的时间多,但是由于对语言的不了解,对算法的不熟悉,导致在产出缓慢,效率低,工作量也不会有多高。
- 因此,工作量是由时间和效率共同决定的,而不能单单只看花费的时间。
- 在《构建之法》有这么一段文字:100%的代码覆盖率并不等同于100%的正确性。通过结对编程以及团队项目的开发过程,我对这个问题也有了一些自己的体会。
- 通常来说,我们的单元测试应当保证较高的代码覆盖率,但是这个覆盖率是对代码的逻辑分支来说的,因而无法保证正确性的高低。
- 此外,代码100%的正确性本身就难以保证,应该说我们通过测试后满足一定的规范要求就可以了。但是对于某些程序,可以从理论上来分析其正确性,并且约定相应的API规范,此时一定程度上是可以实现程序100%的正确性的。
3.2未来的职业规划
- 考研。
- Android开发工程师。
3.3对于软件工程实践课程的理解和期望
- 了解做好一个软件所需要哪些工作流程。
- 了解团队合作需要如何进行,培养团队合作的能力与意识。