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

设计模式(一):设计原则、常用设计模式

1. 设计原则

SOLID原则-SRP单一职责原则:一个类或者模块只负责完成一个职责(或者功能)。

SOLID原则-OCP开闭原则:如果要添加一个新的功能,能够在已有代码基础上直接扩展代码,而不用修改已有代码就能实现,那么就符合“扩展开放、对修改关闭”原则。

SOLID原则-LSP里式替换原则:子类对象能够替换程序中父类对象出现的任何地方,并且保证原来程序的逻辑行为不变及正确性不被破坏。

SOLID原则-ISP接口隔离原则:客户端不应该被强迫依赖它不需要的接口。其中的“客户端”,可以理解为接口的调用者或者使用者。

SOLID原则-DIP依赖倒置原则:高层模块不要依赖低层模块。高层模块和低层模块应该通过抽象来互相依赖。除此之外,抽象不要依赖具体实现细节,具体实现细节依赖抽象。比如,编写的Web应用程序代码只需要部署在Tomcat容器下,便可以被Tomcat容器调用执行。按照之前的划分原则,Tomcat就是高层模块,我们编写的Web应用程序代码就是低层模块。Tomcat和应用程序代码之间并没有直接的依赖关系,两者都依赖同一个“抽象”,也就是Servlet规范。Servlet规范不依赖具体的Tomcat容器和应用程序的实现细节,而Tomcat容器和应用程序依赖Servlet规范。

KISS原则:尽量保持简单,需要逻辑简单、代码简洁。

YAGNI原则:不要去设计当前用不到的功能;不要去编写当前用不到的代码,即不要做过度设计。


http://www.kler.cn/a/542819.html

相关文章:

  • (定时器,绘制事件,qt简单服务器的搭建)2025.2.11
  • 分布式服务框架 如何设计一个更合理的协议
  • Mp4视频播放机无法播放视频-批量修改视频分辨率(帧宽、帧高)
  • Unity 打造游戏资源加密解密系统详解
  • Mac(m1)本地部署deepseek-R1模型
  • NO.11十六届蓝桥杯备战|if-else语句|嵌套if|悬空else|练习4道(C++)
  • 键盘启用触摸板-tips
  • YOLO11改进-模块-引入基于局部重要性的注意力机制Local Importance-based Attention LIA
  • redis底层数据结构——简单动态字符串
  • redis中的hash结构
  • DeepSeek-R1技术革命:用强化学习重塑大语言模型的推理能力
  • ES6 Proxy 用法总结以及 Object.defineProperty用法区别
  • ubuntu使用防火墙开放和关闭指定端口
  • Redis 基本全局命令和单线程架构
  • 激活函数 05 ——Swish
  • 二、通义灵码插件保姆级教学-IDEA(使用篇)
  • jenkins备份还原配置文件
  • PHP的JIT编译器
  • Lombok使用指南
  • 使用mermaid画流程图
  • ubuntu22.04 git clone问题
  • Springboot集成Milvus和Embedding服务,实现向量化检索
  • vue3自定义提示框和下载
  • 1313:【例3.5】位数问题
  • 【python】http.server内置库构建临时文件服务
  • 【Vue2】vue2项目中如何使用mavon-editor编辑器,数据如何回显到网页,如何回显到编辑器二次编辑