- 但你觉得需要注释的时候,应该首先尝试重构代码,这样任何注释都会变得多余。
- 自我测试代码的价值,当你收到一份Bug报告时,首先编写单元测试来暴露bug。
- 编写运行不完整的测试也比不运行的完整测试要好。
- 思考可能会出错的边界条件,并集中测试它们。
- 别忘了测试那些出错时期望抛出的异常。
- 不要因为害怕测试不能捕捉所有的bug而停止编写能捕捉绝大多数Bug的测试。
- 小型重构:可预见性,可见的进展,立竿见影的满足感
- 使用多态替换条件语句。
- 大型重构:揭开纠缠的继承,将过程设计转换成对象设计,将领域和表现分开,提炼层次。
- 习惯于挑选目标,不确定就停下,原路退回。
- 永远不要忘了两顶帽子:重构帽子和新功能帽子
有趣段子:
当两个人驾车快要开到山顶的时候车子抛锚了。他们只能下来推车,一个在前一个在后。半个小时后却毫无进展,在车头的那位说到:“我第一次发现把车推下山会那么难。”而另一位答道:“你说什么?推下山?!”