02 开闭原则

官方定义:

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

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

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

通俗解释:

对扩展开放,对修改关闭

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

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

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

顶层设计思维

抽象意识

封装意识

扩展意识

相关推荐
小小不董14 天前
Oracle OCP认证考试考点详解082系列02
运维·服务器·数据库·oracle·开闭原则·1024程序员节
邮专薛之谦17 天前
Java设计模式六大原则
java·接口隔离原则·开闭原则·单一职责原则·六大原则
*.✧屠苏隐遥(ノ◕ヮ◕)ノ*.✧20 天前
软件设计模式------抽象工厂模式
设计模式·软件构建·个人开发·抽象工厂模式·uml·开闭原则
OceanBase数据库官方博客20 天前
OceanBase中扩容OCP节点step by step
oceanbase·分布式数据库·开闭原则·高可用·安装部署
努力找工作的OMArmy22 天前
软件开发----设计模式每日刷题(转载于牛客)
java·单例模式·设计模式·策略模式·访问者模式·模板方法模式·开闭原则
咕噜Yuki060924 天前
Oracle 的 OCP 与 MySQL 的 OCP 的区别
mysql·oracle·开闭原则
蜡笔小新..1 个月前
【设计模式】软件设计原则——开闭原则&里氏替换&单一职责
java·设计模式·开闭原则·单一职责原则
niech_cn1 个月前
超详细超实用!!!AI编程之cursor编写设计模式开闭原则实例(四)
设计模式·ai编程·开闭原则
丶白泽2 个月前
重修设计模式-设计原则
设计模式·接口隔离原则·依赖倒置原则·开闭原则
蔚一2 个月前
Java设计模式—面向对象设计原则(一) ----->开闭原则OCP(完整详解,附有代码+案例)
java·后端·设计模式·intellij-idea·开闭原则