接口重构定理与Open-Close原则

接口重构定理与 Open-Close 原则
相关文章链接: 模块分解原理探索
前几篇文章讲过了模块分解原理及接口关系稳定原理,并由模块分解原理和接口关系稳定原理推导出了一个接口设计定理,这篇文章中主要讲一个接口重构方面的定理。
Martin Fowler在《重构-改善既有代码的设计》一书里讲述了许多重构方面的方法和技巧,不过许多方法都需要修改原有代码,有没有一种不需要修改原有代码的重构方法呢?即能不能在符合Open-Close原则下进行重构呢?下面给出一条与之相关的接口重构定理:
接口重构定理 :当系统中的新增需求使用对应专业领域的最优接口集合的子集来实现时,原有接口的实现可以不做任何修改。
这个定理的意思很容易理解,新增需求所需的最优接口集合的子集如果在已有实现中存在时,那么可以直接复用它,否则需要写新代码来实现新的接口,总之原有代码可以不做修改。接口重构定理指出了一种符合Open-Close原则的重构方式。
按照接口重构定理来进行重构,如果原有实现不是按照最优接口集合子集来进行设计,那么同一模块内,新的接口和已有实现间可能会存在重复的代码,解决的方法是将已有的接口改造成最优接口集合的子集,这样才能消除掉重复代码,另外由接口设计定理知道,系统将朝着稳定系统方向靠近。
通过接口重构定理可以知道,重构问题很大一部分变成了最优接口集合设计问题。只要知道如何设计最优接口集合,重构就变得简单起来,当然重构时还要遵循 模块分解原理 接口关系稳定原理

你可能感兴趣的:(close)