欢迎来到软件建设

欢迎阅读我对史蒂夫·麦康奈尔(Steve McConnell)有影响力的文本 《代码完整》(Code Complete)(第二版)的 评论的第一部分 。 如果您还没有的话,请先阅读我 的《系列简介》 帖子,我保证这很简短! 在本文中,我们将深入研究内容并从第一章开始。 我希望你喜欢它!
第1章:欢迎使用软件构建
第一章简要讨论了软件开发中涉及的各种任务,并重点介绍了本书中最受关注的任务。 简而言之,本章的目的是通过阅读“代码完成”为您学习的内容打下基础。
让我们从软件开发活动的完整列表开始:

- 问题定义
- 需求开发
- 施工计划
- 软件架构
- 详细设计
- 编码和调试
- 单元测试
- 整合测试
- 积分
- 系统测试
- 修复性维修
许多人,尤其是那些来自非正规编程背景的人,认为构建阶段是软件开发的核心。 在很大程度上,麦康纳尔认为这是一个正确的假设,但需要注意的是,了解其他非建筑活动所起的重要作用仍然很重要。 但是,他强调,本书的其余部分将重点关注与建筑相关的活动,并指出:
如果这本书是狗,它会n在建筑上,在设计和测试中摇尾巴,在其他开发活动中吠叫。
更具体地说,Code Complete将主要关注以下软件开发活动,并按重点程度排序:
- 编码和调试
- 详细设计
- 施工计划
- 单元测试
- 积分
- 整合测试
McConnel在第一章结束时大步讨论了为什么构造在软件开发中起着至关重要的作用。
您对如何进行构造的理解决定了您是一名优秀的程序员。
首先,建设占用了项目总时间的巨大负担(30–80%)。 这也是“软件开发中的中心活动”,其他任务主要发生在构造阶段之前(需求和体系结构)或之后(系统测试)。 他还注意到一些研究表明,当程序员专注于软件构建时,生产率会提高。
此外,源代码(是构建的结果)通常是保持最新的最佳(有时是唯一)文档,因此应谨慎设计。 最后,他指出,考虑到时间限制,预算,意外错误以及其他经常影响“理想项目”期望目标的现实,建设是“必须完成的”唯一活动。 在这种情况下,通常会从项目中剪裁非建筑活动,因为建筑本身是强制性的! 因此,通过改善施工阶段,可以有效地改善整个项目。
这总结了我对第一章的简要回顾! 我希望你喜欢它。 敬请期待更多。
下一页: 第2章:隐喻,以更深入地了解软件开发
如果您想继续阅读本系列文章,最简单的方法是 在Another Coder Blog上 查看 。 我也会将它们交叉发布到Medium,因此如果您喜欢在这里阅读,请不要担心。 干杯!