设计模式-总

面向对象设计原则:

单 单一职责原则 每个类应该只有一个职责

开 开放封闭原则 对扩展开放,对修改封闭

里 里氏替换原则,子类可以替代父类,不影响逻辑功能

接 接口隔离原则, 不应该强迫客户端依赖它不需要的接口

依 依赖倒转原则, 抽象不依赖于细节,而是细节依赖于抽象

合 合成复用原则,聚合/组合>继承

少 迪米特原则 一个对象应当尽可能少地了解其他对象,降低耦合度

管闲

设计模式

创建型5种

单 单例模式,懒汉加载,饿汉加载,使用一个静态量

建 建造者模式,构建与表示分离开

工 工厂方法模式,一个具体工厂对应一个具体产品,1:1存在

抽 抽象工厂模式,1:n,一个工厂可以构建多个产品,产品族

原 原型模式,深克隆,浅克隆

组合型模式7种

组 组合模式,树形结构

享 享元模式,通过共享已经存在的对象,避免创建大量相似对象,减少内存占用。

桥 桥接模式,抽象与实现分离

外 外观模式,为子系统提供一个统一的接口

装 装饰模式,动态地给对象增加额外职责,功能扩展时不修改原始类

适配 适配器模式,接口不兼容

代理 代理模式,proxy,虚拟代理

行为型模式11种

模 模板方法模式,定义一个算法的骨架,允许子类在不改变结构的情况下重定义某些步骤。

策 策略模式,定义一组算法,将它们封装起来,并使它们可以互换,算法的变化不影响使用算法的客户。

责 责任链模式,成功后调用后继者。将请求沿着一条链传递,直到有对象处理它,避免了请求发送者与接收者的耦合。

命 命令模式。将请求封装成对象,以便使用不同的请求、队列或日志进行参数化和处理。

观 观察者模式,发布-订阅,通知更新。定义对象间的一对多依赖关系,当一个对象的状态改变时,其依赖者会收到通知并自动更新。

备 备忘录模式,在不破坏封装的前提下,保存对象的状态,以便以后恢复。

迭 迭代器模式。提供一种顺序访问聚合对象中元素的方法,而不暴露其内部结构。

中 中介者模式,通过一个中介对象来封装对象之间的交互,使得对象之间不再直接相互引用,减少耦合。

状 状态模式。允许对象在其内部状态改变时改变行为,使得对象看起来像是改变了类。

访 访问者模式。为对象结构中的元素定义新操作,不改变其类的前提下定义新的操作。

解释 解释器模式,为语言创建解释器,定义语言的文法表示并解释它。

相关推荐
数据智能老司机20 小时前
精通 Python 设计模式——创建型设计模式
python·设计模式·架构
数据智能老司机21 小时前
精通 Python 设计模式——SOLID 原则
python·设计模式·架构
烛阴1 天前
【TS 设计模式完全指南】懒加载、缓存与权限控制:代理模式在 TypeScript 中的三大妙用
javascript·设计模式·typescript
李广坤1 天前
工厂模式
设计模式
幂简集成explinks2 天前
e签宝签署API更新实战:新增 signType 与 FDA 合规参数配置
后端·设计模式·开源
大飞pkz2 天前
【设计模式】C#反射实现抽象工厂模式
设计模式·c#·抽象工厂模式·c#反射·c#反射实现抽象工厂模式
努力也学不会java2 天前
【设计模式】抽象工厂模式
java·设计模式·oracle·抽象工厂模式
青草地溪水旁2 天前
设计模式(C++)详解—抽象工厂模式 (Abstract Factory)(2)
c++·设计模式·抽象工厂模式
青草地溪水旁2 天前
设计模式(C++)详解—抽象工厂模式 (Abstract Factory)(1)
c++·设计模式·抽象工厂模式
Magnetic_h2 天前
【iOS】设计模式复习
笔记·学习·ios·设计模式·objective-c·cocoa