2.1.2 变化+重复,如何维护

    我们已经知道,在软件开发过程中,时刻发生着变化,特别是需求变化,如果像前述我们编写的重复代码一样,维护这些重复的代码会给我们带来噩梦。

    在重复代码中应用相同修改:为了增强功能或者修改错误(Bug),对于某一处代码进行的改动,在其他重复地方也可能需要修改。

    开发成本增加:新问题可能和旧问题非常相近,但是由于一些小细节的不同,导致开发出各种不能重用的代码。

    不利于测试:如果相同的代码写在不同类里,导致测试代码的重复开发。不利于阅读和维护:随着不断地开发维护,相同功能的实现在不同地方会变得不尽相同,有时甚至出现相同的需求实现逻辑却是不相同的,由于实现的不同,导致这些代码的健壮性也差异很大,很难维护这些代码。

    代码重复还会引起性能等诸多问题,比如产生了很多重复的对象。

    DRY原则是软件开发里极其重要的一条原则,为了使我们的软件更加健壮,易于阅读和维护,我们应极力避免代码重复的“臭味”。

    下面我们将讲述如何使用模板方法(Template Method)模式,避免上述丑陋的重复代码。