文章目录
- 1. 作业的基本信息
- 2. 评估当前的自己
- 3. 展望未来
- 《构建之法》问题回答与思考
- [2.1 单元测试中,如果每次做修改都需要覆盖所有的代码路径带来的维护成本是否会过大?](https://bbs.csdn.net/topics/605258902)
- [2.1 如何提高单元测试的覆盖率(尤其是对于经验不足的新人)](https://bbs.csdn.net/topics/600416568)
- [2.3 花费时间越多,代表工作量越高吗?](https://bbs.csdn.net/topics/600462046)
- [4.4 是否存在一些比较好的自动化代码复审工具](https://bbs.csdn.net/topics/608502664)
- [4.5 结对编程在双方差距较大时的意义是什么?](https://bbs.csdn.net/topics/600333785)
- 对未来的职业规划
- 对于软件工程实践课程,你有什么理解和期望
- 4. 思维导图和学习路线
- 5. git 使用
1. 作业的基本信息
这个作业属于哪个课程 | 广工2023软件工程课程社区 |
---|---|
这个作业要求在哪里 | 软件工程第一次作业 |
这个作业的目标 | 自我评估并制定未来的学习计划 |
其他参考文件 | 无 |
2. 评估当前的自己
头像 | |
---|---|
姓名 | ghc |
爱好 | 音乐 游戏 电影 打码 |
专业水平 | c语言基础 java基础 掌握前端三剑客及 es6,ts 掌握 vue2,vue3 掌握 pinia 了解 uniapp 了解 vite,webpack 等工程化工具 |
项目经历 | Misaka 智能小说续写项目:已上线 SkylineUI 组件库:负责导航型组件的功能实现及部分架构搭建 2023招新小程序制作 抖音网页版核心功能仿写 |
3. 展望未来
《构建之法》问题回答与思考
2.1 单元测试中,如果每次做修改都需要覆盖所有的代码路径带来的维护成本是否会过大?
单元测试的大部分工作应该由开发人员完成,但是很多开发人员只把注意力放在编程上,把代码写出来,而不愿在测试上花费时间,让测试人员去进行测试。但需要明确的是,如果没有做好单元测试,软件在集成阶段及后续的测试阶段会发现更多的、各种各样的错误,大量的时间将被花费在跟踪那些隐藏在独立单元内的、简单的错误上面,导致整个项目的工期增长,提高软件成本。
2.1 如何提高单元测试的覆盖率(尤其是对于经验不足的新人)
使用自动化测试工具,如前端可以使用 Vitest, Vitest 支持通过 c8 和 istanbul 获得测试的覆盖率,安装对应的包,后直接在命令行中进行覆盖率的自动测试。
2.3 花费时间越多,代表工作量越高吗?
我认为花费的时间和工作量成有一定的关联,但不完全取决于工作量,实际开发过程中,往往会遇到各种各样的问题,会影响开发的进度。包括整个团队的沟通,需求分析的质量,以及最重要的个人能力,对业务需求的熟悉程度,都会对花费的时间产生影响。
4.4 是否存在一些比较好的自动化代码复审工具
答案一定是有的,例如在前端项目中,开发时使用 ts 这种强类型语言,就可以避免非常多的低级错误。在项目中可以加入 eslint, prettier 进行代码风格的规范及代码检查,用 husky, lint-staged, commitlint, commitizen 进行 git 提交的规范检查等。所以在搭建项目时更多的注重代码工程化和规范化的建设,对项目代码的健壮性有极大的提升。
4.5 结对编程在双方差距较大时的意义是什么?
对于项目进度,一定会产生一定的影响,但也有一定的意义:对于能力较差的人,能有人带着前进,能够获得更快的进步;对于能力较强 的人来说,他能提升自己的领导能力,而且对项目搭建的规范化要求也要更高。
对未来的职业规划
短期来说,我想要成为一个前端工程师。
对于软件工程实践课程,你有什么理解和期望
- 对于软件工程实践课程,我希望能有团队合作,这样我们能够有效的锻炼到沟通能力和协作能力,这是以后工作中非常重要的能力。
- 我希望学习到前端的知识
- 对老师的期待:能够学习到一个团队的管理以及项目的管理,包括从一开始的需求分析会议,项目计划,到最后的测试,上线,希望能够学到完整的工业软件开发流程。
4. 思维导图和学习路线
5. git 使用