02 开闭原则

官方定义:

开闭原则规定软件中的对象、类、模块和函数对扩展应该是开放的,但对于修

改是封闭的。这意味着应该用抽象定义结构,用具体实现扩展细节,以此确保

软件系统开发和维护过程的可靠性。

通俗解释:

对扩展开放,对修改关闭

对扩展开放和对修改关闭表示当一个类或一个方法有新需求或者需求发生改变时应该采用扩展的方式而不应该采用修改原有逻辑的方式来实现。因为扩展了新的逻辑如果有问题只会影响新的业务,不会影响老业务;而如果采用修改的方式,很有可能就会影响到老业务受影响。

开闭原则是所有设计模式的最核心目标,也是最难实现的目标,但是所有的软件设计模式都应该以开闭原则当作标准,才能使软件更加的稳定和健壮。

优点:
  1. 新老逻辑解耦,需求发生改变不会影响老业务的逻辑
  2. 改动成本最小,只需要追加新逻辑,不需要改的老逻辑
  3. 提供代码的稳定性和可扩展性
场景示例

顶层设计思维

抽象意识

封装意识

扩展意识

相关推荐
郭涤生3 天前
Chapters 8&9: OCP and LSP_《clean architecture》notes
算法·里氏替换原则·开闭原则
宋发元4 天前
面向对象——开闭原则(Open-Closed Principle, OCP)
人工智能·开闭原则
博睿谷IT99_5 天前
英语不好,可以考取Oracle OCP认证吗?
数据库·oracle·开闭原则
m0_653031367 天前
加新题了,MySQL 8.0 OCP 认证考试 题库更新
数据库·mysql·开闭原则
小小不董1 个月前
Oracle OCP认证考试考点详解083系列01
数据库·oracle·开闭原则
晚秋贰拾伍2 个月前
设计模式的艺术-命令模式
运维·设计模式·运维开发·命令模式·开闭原则
晚秋贰拾伍2 个月前
设计模式的艺术-职责链模式
运维·设计模式·运维开发·责任链模式·开闭原则·单一职责原则
晚秋贰拾伍2 个月前
设计模式的艺术-代理模式
运维·安全·设计模式·系统安全·代理模式·运维开发·开闭原则
一只栖枝3 个月前
Oracle OCP考试常见问题之线上考试流程
数据库·oracle·开闭原则·ocp
智驾3 个月前
SOLID原则学习,开闭原则
c++·开闭原则·solid