《Test-Driven Development - A Practical Guide》读书笔记 - 第3章

来源:互联网 发布:广州淘宝运营 编辑:程序博客网 时间:2024/05/16 11:28

3章:意图向导的编程

1.         意图向导的编程Programming by Intention)是极限编程的核心理念之一,意识是在编写代码的时候清晰地表明自己的意图。

2.         需要选择语义清晰的(semantically transparent)名字,也就是说这些名字要达意。

3.         使用名词或名词短语作为类的名字。

4.         使用形容词或具有一般性的名词或名词短语来为结构命名(书中不推荐I开头的命名,但是我是用C#的)。

5.         使用动词或动词短语作为方法名。

6.         使用公认的取值方法accessor)和赋值方法mutator)的命名习惯。

7.         不要在方法名中保留多余的信息。

8.         使用名词或者名词短语作为变量名。

9.         不要在方法名中保留多余的信息。

10.      使用名词或者名词短语作为变量名。

11.      怎么简单怎么来Do the Simplest Thing)。

12.      使用一些重构方法,使代码意图明确:把临时代码替换成查询方法(类似于抽取方法);切分临时变量(不要复用临时变量);消除对参数的赋值。

13.      要作有根据的假设warranted assumption),只有事实证明有必要,才添加代码。

14.      每个参与项目的任都应当使用一种共同的词汇Common Vocabulary)来谈论与领域和系统有关的各种问题。

15.      测试优先:测试通过,那么工作就完成了,避免过度设计(overengineering)而把系统设计得更加复杂。

16.      避免不必要的注释,正当的注释如下:不完整的代码TODO: The tree should be balanced after the insertion);有疑义代码需要复查(CODE DEBT: The looping structure is a bit convoluted.);重构无法使其足够清楚NEEDS WORK: I tried extract method, but it’s still awkward. Maybe refactoring to a Strategy would clean it up?);使用了某种非同寻常的算法(注明那里可以找到这种算法即可);性能调整(防止别人把有意的技巧性代码重构,一般只在性能成为瓶颈时进行);类注释(简单解释类的存在意义及用途)。

原创粉丝点击