Skip to content

Latest commit

 

History

History
42 lines (34 loc) · 3.35 KB

File metadata and controls

42 lines (34 loc) · 3.35 KB

设计模式

23 个设计模式 (GoF)。

创建型模式(Creational Patterns)

将创建对象的过程与业务逻辑解藕。

01 抽象工厂模式 工厂来管理相似的类。这些类的构造函数的参数是相同的。实例根据传入的类的名字和参数,由工厂来生产。将创建不同类型的实例的过程解藕了。
02 工厂模式 实例由工厂来生产。将创建实例和参数解藕了。
03 建造者模式 一个对象很复杂。给其设置不同的特征呈现。
04 原型模式
05 单例模式

结构型模式(Structural Patterns)

在不改变原对象的情况下,给对象新增功能。

06 适配器模式 用适配器来匹配原来不匹配的输入输出。
07 桥接模式 把抽象和实现化接耦。
08 组合模式 将多个类似的对象放在一起,做为一个对象。
09 装饰器模式 动态改变原有对象的行为: 可以是覆盖,也可以是新增函数。
10 外观模式 给大(复杂)的对象提供简单的接口,以此来隐藏系统的复杂性。
11 享元模式 尝试重用现有的同类对象,如果未找到匹配的对象,则创建新对象。主要用于减少创建对象的数量,以减少内存占用和提高性能。
12 代理模式 代理对象代理了内部对象的访问和修改。

行为型模式(Behavioral Patterns)

对象之间的通信。

13 责任链模式 将处理能力对象形成一个链,处理时,将目标顺着链一个个传下去。
14 命令模式 将执行的命令封装成对象。
15 解释器模式 解析上下文。
16 迭代器模式 提供遍历访问集合的方法。
17 中介者模式 用中介来降低多个对象通信的复杂度。将对象通信的 P2P 的网状结果 变成 P2一个中心 的星状结构。
18 备忘录模式 保存对象的状态,以便在某时恢复。
19 观察者模式 也称发布/订阅模式。观察的数据改变时,观察者均会收到信息。
20 状态模式 对象的行为基于对象的状态。
21 策略模式 对某种情况有不同的策略(处理方式)。不同策略的签名是一致的。对策略的封装。
22 模板模式 一个类定义了整个业务流程。业务流程的部分是有不同的,由不同的子类来实现。
23 访问者模式 将对对象的访问从对象中解藕出来。

资源 & 参考