英文书名:<Refactoring: Improving the Design of Existing Code>,英文只有一个版本(02),中文版却有两个(03, 10),这点比较奇怪。
重构是在不改变软件系统的外部行为的前提下,修改代码使之更容易理解和维护的过程。
印象比较深的是:
‘软件的坏味道’,列举了代码中一些不好的特征,在我们遇到他们时,应该考虑通过重构的手段除去他们。有:duplicated code, long method, large class, long prameter list, divergent change, data clump, temporary field, message chin, middle man.
'编写自己的测试‘, 我们大部分的时间不是花在编码上,而是花在debug上。基于此,如果能够使用先测试后编码的策略,其实开发效率不仅不会降低,反而会提高。我个人认为比较有道理。
‘各种重构手法’:最好通过变量名,函数名让你的代码可以是自解释的,而不是过分依赖注释去注解那些费解的名字;不要太大,不要太小;不要太多,不要太少;多使用代理,常消除中间人。。。很多手法都是成对给出的,这说明在代码世界里面,没有什么是绝对的,最适合的才是最好的;设计模式是代码的一个目标,重构是实现这个目标的途径。