前言
重构的原则:不改变软件可观察行为
1.何为重构
重构(名词):对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本。
重构(动词):使用一系列重构手法,在不改变软件可观察行为的前提下,调整其结构。
2.为何重构
2.1重新改进软件的设计
如果没有重构,程序的内部设计会逐渐的腐败变质。当程序员只为短期目的而修改代码时,他们经常没有完全理解架构的整体设计,于是代码就失去了自己的结构。程序员就越来越难通过阅读源码理解原来的设计,代码结构的流失有积累效应。越南看出代码所代表的设计意图,就越难保护其设计。经常性的重构有助于代码维护自己该有的形态。
2.2 重构使软件更容易理解
写出来的代码除了让计算机能读懂之外,还有其他读者。
2.3 重构帮住找到bug
重构可以是读者加深对代码的理解,并立即把新的理解反映在代码中,在搞清楚代码的同时还可以验证自己的一些假设,从而找到bug。
2.4 重构提高编程速度
在需要添加新功能时,内部质量良好的软件可以很容易的找到在哪里修改、如何修改。良好的模块划分是开发者只需要理解代码库中的一小部分就可以做出修改。如果代码很清晰,引入bug的可能性就会变小,即使引