image.png

https://medium.com/backticks-tildes/the-s-o-l-i-d-principles-in-pictures-b34ce2f1e898

OCP开放-封闭原则


开闭原则(OCP,Open/Closed Principle)是面向对象设计中的一个重要原则,属于SOLID原则之一。它的核心思想是:

对扩展开放,对修改关闭。

具体含义:

对扩展开放:模块、类或功能应该允许通过扩展来增加新的行为或功能。

对修改关闭:在增加新功能时,不应修改已有的代码,尽量避免对原有系统的影响。

目标:

通过遵循开闭原则,能够提高代码的可维护性可扩展性以及可复用性,同时减少因为修改现有代码而引发的潜在风险

如何实现开闭原则?

  1. 使用抽象:

• 面向接口编程,将功能定义为接口或抽象类,通过实现具体功能的子类来扩展行为。

• 例如:通过多态,让新增的行为通过继承或实现接口来完成,而不是直接修改已有类。

  1. 利用设计模式:

• 许多设计模式(如策略模式装饰器模式观察者模式等)都能帮助实现开闭原则。

• 这些模式允许开发者在不修改现有代码的情况下,通过组合或继承扩展功能。