我们学习了很多的专业课程,像编程语言、算法、数据结构、编译原理、软件工程等。我想大家都会有这样的疑问:我学了这么多的课程有什么用呢?在工作中有多少会真正被应用到呢?也就是说,大家都觉得理论和实践之间有着不可逾越的鸿沟。邹欣老师的《构建之法:现代软件工程》一书很好地,并且巧妙地将理论和实践结合了起来。
通读全书之后,我认为本书有以下特点:
第一,理论与实践并重。本书介绍了软件工程的相关概念,如:软件工程、单元测试、软件开发流程、敏捷开发、软件需求、用户体验、软件测试、质量保障等。在介绍这些基本概念的同时,作者也全面地诠释了它们在实际的研发工作中是如何表现的,它们又是如何与每个开发和测试人员息息相关的。在介绍这些概念的时候,作者多用举例的形式来说明,这样也使得大家更加的容易理解。
第二,文笔优美,图文并茂。作者为了让我们在阅读本书的时候不感觉到枯燥,可谓是花费了大量的精力。首先,每一个文字段的内容都不是很多,防止我们对着一大页文字发呆而失去了继续读下去的勇气;其次,本书包含了很多有趣的图片,我们可以通过这些图片加深对相关概念的理解;再次,书中内容层次分明,作者将很多知识点通过几个小点顺序列出,让我们阅读和理解起来更加的容易。
第三,语言幽默、诙谐。软件工程里面的概念比较的枯燥和单调,作者也深知这一点。因此,在本书的很多地方,作者都用十分幽默的方式来讲述。例如,书中用“阿超”、“国栋”、“小飞”、“小李”等角色之间的对话来揭示一个概念的本质。这让读者觉得十分的“接地气”,同时通过他们之间风趣的对话又加快了对相关概念的理解。个人觉得,这是本书最大的特色。
第四,覆盖面广,知识点齐全。本书旨在介绍软件工程,但又不仅仅是介绍软件工程。本书对软件工程师的成长、IT行业的创新和职业道德等也进行了细致的介绍。作者以不同的视角来看待整个行业及行业中人的发展,其观点值得大家深思。
《构建之法:现代软件工程》,一本架构在理论和实践之上的优秀的软件工程著作,推荐给大家阅读。
问题:我们是否应该赶在毕业前成为一个真正的软件工程师?
我们现阶段可以从哪方面开始培养自己的开发思维和能力,向工程师迈进?
在单元测试中,一定要要求代码覆盖率达到100%吗?
什么是断言?
团队合作模式和开发流程的关系密切?两者能否脱离?