02 开闭原则

官方定义:

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

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

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

通俗解释:

对扩展开放,对修改关闭

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

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

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

顶层设计思维

抽象意识

封装意识

扩展意识

相关推荐
LoveXming4 天前
Chapter4—工厂方法模式
c++·设计模式·简单工厂模式·工厂方法模式·开闭原则
罗光记9 天前
腾讯混元游戏视觉生成平台正式发布2.0版本
数据库·经验分享·百度·facebook·开闭原则
小白考证进阶中10 天前
终于赶在考试券过期前把Oracle OCP证书考下来了!
运维·数据库·oracle·dba·开闭原则·数据库管理员
努力也学不会java13 天前
【设计模式】三大原则 单一职责原则、开放-封闭原则、依赖倒转原则
java·设计模式·依赖倒置原则·开闭原则·单一职责原则
DKPT1 个月前
Java设计模式之开闭原则介绍与说明
java·设计模式·开闭原则
蓝桉~MLGT2 个月前
spring6合集——spring概述以及OCP、DIP、IOC原则
spring·依赖倒置原则·开闭原则
frank00600713 个月前
戴尔 17G 服务器 E610 OCP千兆网卡驱动安装
服务器·网络·开闭原则
进击的CJR3 个月前
MySQL 8.0 OCP 英文题库解析(十八)
android·mysql·开闭原则
进击的CJR3 个月前
MySQL 8.0 OCP 英文题库解析(十四)
android·mysql·开闭原则