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