在整个练习中,我始终坚持从系统的整体方向进行思考的原则,我从这个方向开始了重构之路,并始终保持正确的方向。那些相对于手头上的任务来说不太重要的问题就用临时方案绕过它。此外,我建立了一个具有最小可行性的测试架构,让我的团队也可以使用它继续重构其它一些领域。在测试构架中依然保留了一些 hack的部分,因为从业务的角度来说没有太大的必要去清理它们。我所获的不仅是重构了一块非常复杂的功能区域,并且加深了对遗留系统的理解。将遗留系统当作一件易碎的瓷器并不会使你感觉更安全,只有大胆地深入它的内在并进行重构,才能使你的遗留系统在未来也能够继续它的使命。
原文转自:http://www.infoq.com/cn/articles/refactoring-legacy-applications