#
你在进行性能分析时便有较细的粒度(granularity)
[良好的分解方式](well-factored manner)来构造自己的程序
[事先设计](upfront design)可以助我节省回头工的高昂成本。
checked exception(可控制异常)转换成一个unchecked exception(不可控制异常)
Don Roberts给了一条准则:第一次做某件事时只管去做;第二次做类似的事会产生反感,但无论如何还是做了;第三次再做类似的事,你就应该重构。
事不过三,三则重构。(Three strikes and you refactor.)
添加功能时-并重构
修补错误时-并重构
复审代码时-并重构
使用重构技术开发软件时,你把自己的时间分配给两种截然不同的行为:[添加新功能]和[重构]。添加新功能时,你不应该修改既有代码,只管添加新功能。通
过测试(并让测试正常运行),你可以衡量自己的工作进度。重构时你就不能再添加功能,只管改进程序结构。此时你不应该添加任何测试(除非发现先前遗漏的任
何东西),只在绝对必要(用以处理借口变化)时才修改测试。
这个例子给你上的最重要一课是[重构的节奏]:测试、小修改、测试、小修改、测试、小修改......。正是这种节奏让重构得以快速而安全地前进。
|