三读《构建之法》——源代码的设计、实现、控制与两人合作

现在,《构建之法》的一大半已经读完了,在这一大半本书中,这一部分可以说是对我触动最大的,也应该是整本书对我触动最大的。

整个第二章围绕测试展开,用一个很生动的类比告诉了我们测试的重要性:如果有人说,“一个人写写程序玩玩,单元测试似乎不那么重要。”,那么你可以回应他:“你可以大胆对你的女朋友说:‘我们只是玩一玩。’看看效果如何”。

namespace DemoUser{

public class User{

public User(String userEmail) {

m_email=userEmail;

}

private string m_email;

}

}

仅仅对于这么一段代码,作者就给出了四个单元测试,分别测试了普通字符串、空的字符串、长度为0的字符串、都是空格的字符串的情况。测试代码的行数比被测代码的行数多了三倍以上。想想之前几次大作业时对测试的忽视,以及最后代码写完后修改错误所用的大量时间,真是后悔当时没有读《构建之法》。

作者还对单元测试提出了标准:在最基本的功能/参数上验证程序的正确性;由最熟悉代码的人来写;测试后机器状态保持不变;运行时间短;产生可重复的、一致的结果;保持独立性;覆盖所有代码路径。这些标准在以后我们写单元测试时会再三注意。

除了单元测试,作者还告诉我们应该进行回归测试以验证更新版本后有没有“退化”的情况发生,还应该进行效能分析看看代码有哪里值得优化,使自己的代码跑得“又快又好”。

第三章则告诉了我们一位软件工程师应该如何成长,并给出了很多评价标准。使我们的职业成长之路更为清晰,同时也警醒着我们不要目标过高,要认清自己。要通过不断的学习、实践和总结来提升自己,通过考证来肯定自己。

第四章开始着眼于合作中的最低层次——两人合作。一开篇便用很大的篇幅告诉我们代码规范及其重要性,要从缩进、括号、断行与空白的{}行、分行、命名、下划线、大小写、注释等九个方面形成代码风格规范,从而达到便于团队成员阅读自己的代码的目的。

作者对代码设计规范也提出了不少要求,但我自认为这一点做得还不错,不展开了。

接下来,作者则对如何进行代码复审进行了说明,这比之前第二章所说的测试提出了更高的要求,不仅从自审变成了他审,还对具体代码之外的概要、设计规范、代码规范、效能、可读性、可测试性都要进行审核。然后作者还从社交角度为结对编程提供了不少意见。

第十一章则通过大量生动的具体故事,给我们大致呈现了软件设计团队经常遇到的一些问题,告诉我们在各种情况下应该如何应对。也提供了每日构建、小强地狱、构建大师等管理方法。

时间: 2024-08-02 00:54:59

三读《构建之法》——源代码的设计、实现、控制与两人合作的相关文章

构建之法---什么是代码规范?如何与人合作编码?

什么是代码规范?如何与人合作编码? 两个工程师在一起,做得最多的事就是相互看对方的代码,因此我们知道代码最终还是要给人来看,而不是机器,因此要注意代码的规范,即代码风格的规范和代码设计的规范:1.代码风格的原则就是简明易读无二义性,还应注意缩进.行宽.括号,最好是括号单独占一行.2.下划线用来分割变量名字中的作用域标注和变量的语义,所有类型和类都应该采用pascal命名法-单词首字母大写,而变量采用camel命名法-第一个单词全小写,其余单词首字母大写 3.注释是为了解释程序做什么,为什么这样做

第五次作业《读构建之法的心得》

<读构建之法的体会> <构建之法>这本书是软件大大神邹欣的作品之一,这本书体现邹欣老师的情怀,很简洁的讲述了软件设计的各个阶段,描述了一个微软软件大神对软件的理解.构建之法对我帮助挺大的,通过构建之法这本书使我对软件的构建很清晰的了解,让我对软件设计更加的清晰的认识,增加了我对软件的认识的兴趣,好了,现在来讲述讲述里面的内容,第一张讲概论:软件等于程序加文档,软件工程是什么,第二章讲 个人技术和流程 单元测试,效能分析工具,个人开发流程第三章讲软件工程师的成长 个人能力的衡量与发展

2018--20179215--《构建之法(第三版)》第四章 两人合作

构建之法 第四章 读书笔记 4.1代码规范 代码规范可以分为两部分: 代码风格规范-主要是文字上的规定 代码设计规范-牵涉到程序设计.模块之间的关系.设计模式等方方面面的通用原则 4.2代码风格规范 代码风格的原则是:简明,易读,无二义性. 缩进:4个空格的距离阅读性最好. 行宽:可限制为100个字符. 分行:不要把多条语句放在一行,每个"{"和"}"单独占一行,不要把多个变量放在同一行. 命名:不要提到类型或其他语法方面的描述:避免过多的描述:避免可要可不要的修饰

读构建之法之感

读构建之法之感,为什么迟迟没有发构建之法这本书的观后感,是因为想要细细的看,为什么老师这么要求我们这么做,为什么要刻意的去发微博,原因都在构建之法的这本书中.构建之法这本书和其它的软件工程的书不同,构建之法这本书讲的清晰有趣,容易理解,不像其它的软件工程的书籍,写的那么的枯燥和乏味,构建之法的每章都有很大的联系,让人逐渐的去深刻的理解.通过构建之法理解并懂得什么是软件工程,软件工程是系统的,有序的,可量化的方法应用到软件的开发,运营和维护中去.希望通过自己的努力以及软件工程的课能够让自己有一个小

读构建之法,重入编程之门

在翻开这本<构建之法>之前,我以为从专业划分角度来讲我多少算是一个计算机人,最起码算得上一个计算机专业的人.但是在当我谨慎的选择了一个自认为适合学习的好环境,怀着一种对编程无比向往的心情阅读这本书的时候,才意识到,之前的我可能是迈入了计算机隔壁班的门. 不得不说,邹欣老师的书,确实不像其他同类书籍那样全篇皆是各种枯燥无味的理论体系和大量读完也不知所云的专业术语及定义,虽然以我的基础程度对于此书中提到的各种编程案例理解的也不是很透彻,但是本书的趣味性着实使枯燥的编程更容易被接受.它刷新了我对软件

对读构建之法后提出的五个问题

读构建之法有以下几点疑惑: 1.如何使自己的开发思维更加敏捷? 2.如何分配好团队里面成员的任务,来达到最好的工作效率? 3.当面临用户的需求和优化后的软件起冲突时,用户的需求一定是最重要的吗?那么用户根本不了解优化的软件的好处,一定强制要求修改怎么办? 4.如何使自己的产品在市场上占有绝对的优势? 5.什么样的软件开发团队要开发什么样的软件才适合敏捷流程?

(第九周)读构建之法有感1

构建之法第四章:两人合作 在这一章节里面,我才深刻地认识到自己所编写的代码是有多混乱,多么的不规范.编写规范的代码是程序人员良好的习惯.书本里面提到的代码复审以及结对编程都是要合作的,我们曾经也进行过结对训练,能在实践进行中感受到每个人的角色和作用,学习到很多,对于代码复审则是比较陌生.但是在书中还是了解到代码复审的作用是很强大的,非常适合一些中型以上的程序的测试检查.

作业三:构建之法的困惑和思考(1-5)

第一章:了解了什么是软件和软件工程,知道了BUG,但对于软件发布的时机还是有点模糊 第二章:学习了单元测试,效能分析工具和开发流程,但是对于内容还是一知半解 第三章:惊叹于要成为一名软件工程师的职业发展的考级之路,意识到了一名软件工程师的厉害之处,我们在毕业应聘职业时用不用拿出相应的工程师等级 第四章:了解了代码规范和两人合作,也在结对实验中明白了两人合作的重要性 第五章:知道了团队合作,问在多人的思维冲突时如何解决

构建之法学习(第四章 两人合作)

第四章 两人合作 1.代码规范  1)代码风格规范.主要是文字上的规定,看似表面文章,实际上非常重要. *原则:简明,易读,无二义性 *缩进:4个空格 *行宽:行宽必须限制,可以限定为100字符 *括号:在复杂的条件表达式中,用括号清除地表示逻辑优先级 *断行与空白的{}行:推荐格式如下 if ( condition ) {        DoSomething(); } else {       DoSomethingElse(); } *分行:不要把多条语句放在一行上.并且,不要把多个变量定