书的第一章非常详细的介绍了什么是软件工程,非常抓住我眼球的一个词是体系。软件工程是把相关的技术和流程融汇到一个体系中的。本书读起来像一本小说,由一个个非常具有代表性的角色构成的一个个故事,非常有趣的是书中的插图精妙给人带来恰到好处的理解与提点。在本书的开头部分作者对读者提出以下三点要求:1.研发出符合用户需求的软件; 2.通过一定的软件流程,在预计的时间内开发出足够好的软件; 3.能够证明开发的软件是可以维护和继续发展的。这三点要求可谓是比较高了,对于一个初学者来说,我觉得这是一个比较高的的目标,首先需要学会工程的相关基础知识,才能进一步去理解实现工程。在第三章中作者讲述了几种软件工程师的思维误区:分析麻痹;不分主次,想解决所有依赖问题;过早优化;过早扩大化/泛华。这些误区在我一个初学者看来都有些教训的回忆,我觉得能不能写出一个工程,最重要的就是能分析清楚工程的步骤,能有效清楚的分析出来总体的过程需要。后面介绍了软件工程师的这样发展,工程师可以通过各种考核来是实现晋升。
后一章作者特别提到要注意代码的规范,尤其是在于他人合作的过程中,以下这些点值得注意:
- 4个空格的缩进
- 每个{}独占一行
- 不要把多个变量定义在一行上
- 一个类型的成员变量用m_name来命名
- Pascal:所有的类型/类/函数名
- lowerCamel:变量
- 注释是为了解释程序做什么(What),为什么这么做(Why),以及要特别注意的地方,只用ASCII字符,不要用中文