重构(名词)
对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本。
重构(动词)
使用一系列重构手法,在不改变软件可观察行为的前提下,调整其结构。
为什么需要重构?
通过重构我们能得到什么?
1.重构能够改进软件设计
代码结构的流失是累积性的。越难看出代码的设计意图,就越难保护其中的设计,于是该设计就腐败的越快。而经常性的重构可以帮助代码维持自己的形态和结构。
完成同样一件事,设计不良的程序往往需要更改代码,这通常是因为相同的代码在不同的地方做着同样的事。如果消除重复代码,你就可以确定所有的事物、行为在代码中只表述一次,这正是优秀设计的根本。
2.重构使软件更容易理解
重构会使代码渐趋简洁,越简洁就越容易理解,越容易理解就越容易修改...
3.重构能够找到代码中隐藏的bug
对代码进行重构,可以更深入的理解代码,搞清楚程序的结构,于是bug就被揪出来了。
重构能够帮助程序员更有效的写出更强健的代码。
4.重构提高编程速度
良好的设计是开发的根本,拥有良好的设计才可能做到快速开发。如果没有良好的设计,或许短时间内进展迅速,但是恶劣的设计很快就让你的速度慢下来。你会花费大量的时间进行调试,添加新功能难度越来越高,修改时间越来越长,bug越藏越深,为了解决问题于是一个又一个补丁出现...哦~真是一个恶性循环。
重构可以帮助你更快的开发软件,因为它阻止系统腐败变质,它甚至还可以提高设计质量。
何时重构:见何时重构?