在邹老师来学校讲课时,我便花了2个晚上在图书馆看到一半了,那就先遵循国内的现象,只看结果不看过程,直接上内容。
第一章:
在阅读完第一章只有一个困惑那就是:1.怎样才算是一名合格的工程师?
第二章:
第二章的问题有较多。
1.单元测试要快,既然要快,那同时单元测试要测试API中每个方法以及每个参数,而且同时还要覆盖所有代码路径,那无疑会增加大量程序代码,如何做到快?(章节2.1.2)
2.学生毕业到走向社会成为职业程序员,这过程需要时间,而且国内的程序员又有一个35岁危机,那我们该如何对待?提前转行向管理或者其他方面?(2.3)
3.回归测试要怎样实现?而且还需要自动化?老师一直未讲过相关知识,这与社会发展趋向会不会背道而驰?
第三章:
1. 一个能力出众的程序员要如何融入到团队中去?而不是会被团队排外,不积极就会被看轻,而积极又会被误会抢风头,完全是因为国内环境导致吗?(章节3.2)
2.在3.2节的软件工程师的职业发展中,提到考级,而在社会工作中,实践经验比证书更重要,要是在大学期间就接受这种固定性思维成长,在将来工作中岂不是会影响到以后的工作模式的创新吗?
第四章:
1. 老师上课讲的注释三载代码后面加2个斜杠直接中文解释,更甚的是连变量都要加中文注释,,与4.2.9节中所讲的注释很不一样,那我们该如何选择?应付老师又有可能让这种行为将变为习惯。
2. 结对编程目的是相互监督,更好地开发,但我们在实验过程中却反而不是怎样,而是更容易被队员带入误途而越走越远,还远不如分模块写效率更高,时间更快,结对编程反而更费时,为何还要推行这个方法?(4.5.2)
第五章:
1. 在5.3节的开发流程中,个人或者是小组中,大多都是使用写了再改模式,这也可以更快完成,在前面也提到要降低任务交付时间的标准差,这也能更符合,为何不提倡,而只说对实际用户,解决实际需求来说缺点太大?在团队中,写实际软件过程中,更多的也是分模块来写,并想不出有何缺点。
第七章:
在7.2.5中说商业项目要重视市场和用户,技术三第三位,当然这本就是商业在前面,但是没有高深的技术支持如何能更好让项目顺利完成,让用户体验一流的服务,在各种创业大赛中,所谓的商业项目也是来自于一个好想法好点子,难道这不更应该需要技术去实现吗?(顺提第六章的敏捷流程,看完后云里雾里,不懂,是我没抓到核心思路还是因为其他?)。