个人总结

 

时间过的飞快,转眼间软件工程这门课也迎来了尾声,刚接触这门课时,我的内心只有一种想法:我好菜啊……啥都不会啊……这门课在干啥啊……为什么当初要选这门课啊……。但是随着课程的深入,每周(后来改成两周)阅读一本软件工程的书籍以及个人项目、结对项目、团队项目的不断展开,我逐渐对这门课有了更深刻的认识。在此期间,遇到了许多困难,同样的也收获了很多新的知识、技能。


 

个人作业

老师给出的题目是词频统计。对于这道题目,实际上对算法要求并不高,但是在此期间解决了很多以前没有注意的问题,比如:代码规范、代码热行。以前写代码时,想到什么就写什么,没有考虑到代码规范,写出来的代码自然就很难看(hhh~)。

通过个人作业我学会了:

  1. 代码规范

  2. 制作PSP表格,来规划时间,提升效率

  3. GitHub的使用

  4. 如何将代码移植到Linux系统上


 

结对作业

我做的是core组,比起个人作业多出了两个人交流以及分工的部分,两人分别承担驾驶员和领航员的角色的模式,“驾驶员”负责具体的编码工作,“领航员”则负责检查,及时纠正代码中的问题。结对编程的形式使得代码处于不断地审查过程,每一段代码都由一个人编写,另一个人检查,最大程度上减少了出现bug的可能。

通过结对作业我学会了:

  1. 最大的收获就是一个良好的接口应该在一开始就和 UI组商量好, 例如给UI需要哪些数据,是用什么形式封装,这样封装会产生哪些问题,这些问题该怎么解决诸如此类。一个好的接口可以简化使用,更好的体现功能,也可以将内部的实现隐藏起来,保护程序不被修改,事半功倍。

  2. 结对编程能够很大的提高效率,特别是队友比较可靠的时候。

  3. 要多与UI组沟通,这个沟通不仅仅是刚开始时的沟通,而是在编程时,尽可能的多交流,这样才能及时发现对接上的一些问题,真正做到敏捷原则。


 

团队作业

我们组做的是实验室信息发布平台,这是个大坑,过程艰辛,但最终结果还算不错。

  1. 我们组前期做的工作还算充足,做了很多调研工作,明确了前进的方向。但是在项目中期,我们组所有成员都忙于应付期末考,倒是没有时间做这个项目。在项目后期,进入暑假,原本我们预期会有大把的空闲时间让我们完成这个项目,但事实上,由于我们组所有成员都是大三升大四,这个暑假要么忙于找保研的导师,要么出国做暑研,导致留给软工项目的时间并不充分。

  2. 我们项目起初加上了跟多扩展功能,但工作量太高,我们错误的估计了自己的能力,所以我们决定舍弃掉一些非核心功能。

  3. 产品推广十分困难,因为我们这个产品不仅面向学生,还面向老师。

  4. 我主要负责网站的后台搭建,期间遇到了很多大坑,最主要的问题出在数据库上,但最终还是成功上线了,可喜可贺。


 

总结

最后,感谢老师和助教一个多学期的陪伴,虽然过程一波三折,但是收获颇丰。学会了许多编程技巧、团队协作、项目开发、网站搭建这些方面的知识,对一个大项目的统筹安排时间能力得到了提升。

posted @ 2018-08-03 20:54  ToumaKazusa3  阅读(100)  评论(0编辑  收藏  举报