一学期的软件工程课快要结束了,学习了一学期收获还是很多的。学习画各种表、图使我思路更清晰,更有逻辑。还学习很多与毕业论文有关系的内容。还有团队合作呀和如何设计框架的锻炼。
我这学期做到了认真听课,跟着老师的思路走。
学期初,我看书预习的时候不明白书的第四页说学生和教师的关系是健身教练和健身学员的关系。我现在明白了,健身教练是根据学员的问题去设计健身计划的,而我们的课老师也是根据我们每个人问题不同去进行指导的。健身学员是要自己锻炼而非教练替他练就会有效果的,教师和学生也是这样,得学生自己去渴望学习自己去实践,老师只能指导,并不能替学生实践。
上这门课之前我也对这门课做了了解,所谓软件工程,就是把软件中的Bug消灭掉的工程,当时我在想,这门课除了这个任务还学不学习一些更高级的内容。现在我知道了软件工程这门课是在教我们如何做一个软件工程师,在这门课中,我学会了如何在团队中做项目和团队分工合作,也学会了如何以画图方式理清自己的思路,学会从想好题目一直到检查漏洞和程序稳定性和可行性。
学期初我还提出了问题“软件是由多人合作完成的。不同人员的工作相互有依赖关系。例如,一个人写的模块被其他人写的模块调用。软件的很多错误都来源于程序员对模块功能的误解、疏忽或不了解模块的变化。如何通过“单元测试”来解决这一问题?”。现在已是学期末,我对这个问题的解答是,每个人遵从同样的语法法规,执行一套规则,就会减少对模块功能的误解、疏忽或不了解模块的变化的情况。单元测试不仅是作为无错编码一种辅助手段在一次性的开发过程中使用,单元测试必须是可重复的,无论是在软件修改,或是移植到新的运行环境的过程中。因此,所有的测试都必须在整个软件系统的生命周期中进行维护。
这学期我学会了团队合作,刚开始自己做作业,后来老师让两人一组,我和靳萌的室友关系进一步升华成了队友,我们共同完成任务,互相答疑解惑,效率比一个人是高多了。再后来就是五个人一组,我、靳萌、刘彦麟、蔡强、李静远一组,我们互相协作互相帮助,每个人都有自己的擅长,互相弥补了不足,这让我更加觉得团队的重要,效率提高了很多,我们慢慢地磨合。期末大作业我们做的是游戏:贪吃蛇,我们合作的很好。
我觉得软件工程课教会了我很多,有的专业课学算法、编程语言、理论知识,这门课教会了我许多其他课学不到的东西,比如通过画图理清思路,表明逻辑,这对写一段程序帮助很大,以前许多时候写着写着都把自己写蒙圈了,而在开动之前画画图,写的时候时不时的看着点能帮助自己少走些弯路,少出些错。还教会了我以后工作之后和团队如何合作,这对即将实习的我们非常帮助。
这学期收获颇丰,感谢冯华平老师、周智老师、邹欣老师的付出,对课程悉心的设计,对我们的监督指导。这门课让我成长了很多,这门课不仅给了我专业知识,还有很多很多。