当前位置: 首页 > news >正文

02 开闭原则

官方定义:

开闭原则规定软件中的对象、类、模块和函数对扩展应该是开放的,但对于修
改是封闭的。这意味着应该用抽象定义结构,用具体实现扩展细节,以此确保
软件系统开发和维护过程的可靠性。

通俗解释:

对扩展开放,对修改关闭
对扩展开放和对修改关闭表示当一个类或一个方法有新需求或者需求发生改变时应该采用扩展的方式而不应该采用修改原有逻辑的方式来实现。因为扩展了新的逻辑如果有问题只会影响新的业务,不会影响老业务;而如果采用修改的方式,很有可能就会影响到老业务受影响。
开闭原则是所有设计模式的最核心目标,也是最难实现的目标,但是所有的软件设计模式都应该以开闭原则当作标准,才能使软件更加的稳定和健壮。

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

在这里插入图片描述

顶层设计思维

抽象意识
封装意识
扩展意识

http://www.lryc.cn/news/198613.html

相关文章:

  • LamdaUpdateWapper失效问题
  • “权限之舞:Linux安全之道”
  • Visual Studio Code官网下载、vscode下载很慢、vscode下载不了 解决方案
  • URL、域名和网址的区别
  • 【oceanbase】centos7/kylinv10部署oceanbase(x86版本)
  • 论文导读 | 支持事务与图分析的图存储系统
  • Vue3最佳实践 第八章 ESLint 与 测试 ( ESLint )
  • 【C++】命名空间和using namespace std的注意事项
  • 修改51单片机中数组元素的值
  • Ruby和面向对象技术
  • C++11常用新特性——可变参数模板
  • SpringCloud-Seata
  • java击球小游戏运行代码
  • Hadoop面试题+详解
  • PDF编辑阅读:Acrobat Pro DC 2021中文稳定版
  • 单词规律(C++解法)
  • MySQL 主从复制原理
  • 构建嵌入式Linux rootfs根文件系统
  • 高速电路设计----第三章
  • 【微信小程序】6天精准入门(第4天:自定义组件及案例界面)附源码
  • pragma once与ifndef的区别
  • 52单片机独立键盘控制数码管计数
  • 完美解决 在将最终稿件上传到 IEEE PDF eXpress进行格式检查是出现“font not embedded“的问题 (不会出现自动压缩图像的现象)
  • 零基础学习CSS
  • 基于Flume+Kafka+Hbase+Flink+FineBI的实时综合案例(五)FineBI可视化
  • Python逆向爬虫案例: 某网站AES逆向解密
  • ONNX runtime本地终端部署
  • Linux性能优化--性能工具:特定进程CPU
  • 技术人员转岗产品经理,有优势吗?
  • 使用IDEA2022.1创建Maven工程出现卡死问题