什么叫重构
重构有两种解释,一种是作名词的解释,一种是作动词的解释。
名词:对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本。
动词:使用一系列重构手法,在不改变软件可观察行为的前提下,调整软件的结构。
重构是软件开发过程中一个重要的事情之一,重构与重写的区别:
- 重构:不是对已有代码的全盘否定,而是对不合理的结构进行调整,合理的模块进行改动;利用更好的方式,写出更好,更有维护性代码。
- 重写:已有的代码非常复杂混乱,难以修改,重构的时间还不如重新写一个来得快;根据需求另立一个项目,完全重写。
为何要重构
车子脏了就得洗,坏了就得修,报废了就得换。
程序也一样,不合需求就得改,难于跟上业务的变更就得重构,实在没法改了就得重写。
现在的互联网项目已经不再像传统的瀑布模型的项目,有明确的需求。现在项目迭代的速度和需求的变更都非常的迅速。在软件开发的编码之前我们不可能事先了解所有的需求,软件设计肯定会有考虑不周到不全面的地方&