23种设计模式汇总详解

设计原则

中文名称 英文名称 含义 解释
单一职责原则 Single Responsibility Principle(SRP) 任何一个软件模块都应该只对某一类行为者负责 一个类只干一件事,实现类要单一
开闭原则 Open-Close Principle(OCP) 软件实体(类、模块、函数等)应该是可以扩展的,但是不可以修改 对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果
里氏代换原则 Liskov Substitution Principle(LSP) 子类型必须能够替换掉他们的基类型,且不改变原有逻辑 实现开闭原则的关键步骤就是抽象化,而基类与子类的继承关系就是抽象化的具体实现,所以里氏代换原则是对实体抽象化的具体步骤的规范。
接口隔离原则 Interface Segregation Principle(ISP) 接口应该是内聚的,不应该强迫客户依赖他们不用的方法 使用多个隔离的接口,比使用单个接口要好
依赖倒转原则 Dependency Inversion Principle(DIP) 高层模块不应该依赖底层模块,二者都应该依赖于抽象;抽象不应该依赖于细节,细节应该依赖于抽象 针对接口编程,依赖于抽象而不依赖于具体
迪米特法则 Demeter Principle(DP) 一个实体应当尽量少的与其他实体之间发生相互作用,使得系统功能模块相对独立 最少知道原则
合成复用原则 Composite Reuse Principle(CRP) 尽量使用组合(contains-a)、聚合(has-a)的方式而不是继承(is-a)的关系来达到软件复用的目的 类之间的耦合度较低,一个类的变动对其他类的影响较小

23种设计模式

相关推荐
YYYing.4 分钟前
【设计模式系列 (四) 】建造者模式
c++·后端·设计模式·建造者模式·c/c++
Zane199418 小时前
同一段单例代码,为什么在高并发下偶尔会创建出两个实例?聊聊哪种单例实现才是真的安全
设计模式
Carl_奕然18 小时前
【智能体】Loop 的四种设计模式之:Agent Loop(2026 最新版)
人工智能·设计模式·语言模型
小酒星小杜19 小时前
画 AI 漫画,别只会写“日漫风”:10 种画风、适用故事和可复制提示词
人工智能·设计模式·程序员
sarasuki1 天前
为什么 Agent 工具需要一个「协议」而不是「框架」:MCP 成为标准的底层逻辑
设计模式·agent·mcp
vivo互联网技术1 天前
知识不是文件,也不是向量 | KDC 系列 02
人工智能·设计模式·架构
Zane19947 天前
一个 new 就能创建对象,为什么还要拆出单例、工厂、建造者、原型四种模式?
设计模式
怕浪猫8 天前
一行命令复刻爆款视频,我把 Hypit 从安装跑到了出片
人工智能·设计模式·程序员
Zane19948 天前
函数式编程里的函数,其实不是你天天写的那个函数——三大编程范式的边界在哪
设计模式
Zane19949 天前
策略模式现在该不该上?一次讲清楚过度设计和设计不足怎么找平衡
设计模式