一、概念
The Open Close Priciple
软件实体(类、模块、函数等等)应该是可以扩展的,但是不可修改的。
二、理解
任何软件都需要面临一个很重要的问题,即他们的需求会随时间的变化而变化,当软件系统需要面对新的需求时,我们应该尽量保证系统的设计框架时稳定的。
抽象化时开闭原则的关键。
开放,通过抽象
封闭,不可修改,
接口,底层来实现接口,高层依赖于接口
获得封闭性的方法:
1.使用抽象获得显示封闭
2.使用“数据驱动”的方法获得封闭性
三、意义
增加灵活性、可重用性、可维护性
四、注意
开发人员应该仅仅对程序中呈现出频繁变化的那些部分做出抽象。拒绝不成熟的抽象和抽象本身一样重要!!!