Table of Contents
hide
开放/封闭原则 是软件开发世界中最基本的设计原则。 它指导我们如何构建一个稳定而灵活的系统。
定义:
类、模块和函数等软件实体应该对扩展开放,对修改关闭。
开闭原则的含义是应该扩展一个软件实体来实现改变,而不是通过修改现有代码来实现改变。
开闭原则是限制软件实体未来事物当前开发和设计的原则。
注:开闭原则是对扩展开放,对修改关闭。这并不意味着不会进行任何修改。低级模块的变化必须与高级模块耦合,否则将是一个孤立的、无意义的代码片段。
开闭原则的重要性:
- 开闭原则对测试的影响
开启和关闭的原则是保持原始测试代码仍然能够正常运行,我们只需要测试扩展代码。
- 开闭原理可以提高复用性
在 面向对象设计中,所有逻辑都是由原子逻辑组合而成,而不是在一个类中独立实现一个业务逻辑。只有这样,代码才能被重用。粒度越小,被复用的可能性就越大。
- 开闭原则可以提高可维护性
- 面向对象的开发需求
如何使用开合原理:
一、通过接口或抽象类限制扩展,限制边界的扩展,不允许接口或抽象类中不存在的公共方法;
其次,尽量使用接口或抽象类作为参数类型和引用对象,而不是实现类;
第三,抽象层要尽量保持稳定,一旦确定,就不允许修改。
变化的封装有两层含义:
首先,将相同的更改封装到接口或抽象类中;
其次,将不同的变化封装到不同的接口或抽象类中。两个不同的变化不应该出现在同一个接口或抽象类中。