为什么敏捷开发强调重构? 因为不得不如此. :) 具体点说, 敏捷开发方式更容易导致软件腐化, 软件腐化的影响也更为深远. 为了后续的开发/维护工作顺利开展, 必须引入重构, 改善既有代码的设计.
回顾传统开发方式, 个人(或小队)比较倾向于负责某一个具体的模块, 当此模块上有开发新功能或者解决bug的需求时, 重构的迫切性非常之低. 因为此个人(小队)对它非常了解, 他总有办法完成任务, 即使此模块的设计已经非常的糟糕, 代码非常的晦涩.
而在敏捷开发中, 此一模块并非专属于某个人(小队), 其他人对其不断的修改, 致使其以惊人的速度腐化. 因此, 为了其他人能够理解, 能够在其上进行后续开发/维护, "重构"既是必需.
本文来自于CSDN博客