构建之法第四章
本章为两人合作,主要介绍了代码规范、极限编程、结对编程、两人合作的不同阶段以及影响他人的技巧
代码规范:可分为代码风格规范和代码设计规范两部分
代码风格的原则:简明、易懂、无二义性
代码风格规范包括:
1、缩进
2、行宽
3、括号
4、断行与空白的{}行
5、分行
6、命名
7、下划线,一般用来分隔变量名字中的作用域标注和变量的语义
8、大小写,有Pascal形式和Camel(lowerCamel)形式
9、注释
代码设计规范有几个方面:
1、函数,只做一件事,并且要做好
2、goto,使用goto实现函数有单一的出口
3、错误处理,包括参数处理和断言
4、如何处理C++中的类
1>类
2>class vs.struct
3>公共/保护/私有成员(public、protected和private)
4>数据成员
5>虚函数(Virtual Function)
6>构造函数(Constructors)
7>析构函数(Destructor)
8>new和delete
9>运算符(Operators)
10>异常(Exceptions)
11>类型继承(Class Inheritance)
代码复审
1、形式:自我复审、同伴复审(最基本)、团队复审
2、步骤:
1>代码必须成功地翻译
2>程序员必须测试过代码
3>程序员必须提供新的代码
4>在面对面的复审中,一般是开发者控制流程,讲述修改的前因后果
5>复审者必须逐一提供反馈意见
6>开发者必须负责让所有的问题都得到满意的解释或解答,或者在TFS中创建新的工作项以确保这些问题会得到处理
7>对于复审的结果,双方必须达成一致的意见
3、核查表
1>概要部分
2>设计规范部分
3>代码规范部分
4>具体代码部分
5>效能
6>可读性
7>可测试性
结对编程:将代码复审发展到极限(极限编程),不间断地复审
两人合作的不同阶段和技巧
1、萌芽阶段
2、磨合阶段
3、规范阶段
4、创造阶段
5、解体阶段
影响他人的几种方式
1、断言
2、桥梁
3、说服
4、吸引
如何正确地给予反馈(层次)
1、最外层:行为和后果
2、中间层:习惯和动机
3、最内层:本质和固有属性
总结来说,本章主要继上一章的个人技术流程发展到两人合作,这也是最简单的团队形式,基于两人合作,我们应该保证一定的代码规范,适当的代码复审,当然,在极限编程的思想下,还有结对编程(不间断地复审);后面讲解了一些关于两个人合作的阶段和技巧问题以及我们的反馈方式和带来不同的效果,作者形象的用三明治介绍了比较让他人容易接受的反馈,同时我们应该注意反馈的三个层次,多考虑他人的感受,向他人反馈提意见时合理的说话方式可以达到事半功倍的效果。
个人感受部分:
1、我过去怎么做的;过去和别人提意见比较直接,没什么方法
2、结合书中所讲,这样有什么不好:有时候这样沟通不能真正起到作用,还可能发生不愉快等
3、提出一个解决办法,避免再次掉入陷阱:掌握与人沟通的方法,尽量让别人容易接受