@markheng
2018-09-16T14:46:19.000000Z
字数 630
阅读 1605
设计模式 一览
算法
设计模式
https://design-patterns.readthedocs.io/zh_CN/latest/index.html
创造型模式
隐藏对象创建时的逻辑
- 工厂模式
调用者向工厂索取对象
- 抽象工厂模式
生产工厂的工厂
- 单例模式
全局唯一的实例
- 建造者模式
将单一对象一步步构造成复杂对象
- 原型模式
参数化地构造对象
结构型模式
关注类和对象的组合
- 适配器模式
适配不同借口功能
- 桥接模式
将抽象与实现解耦
- 过滤器模式
将过滤规则封装成对象,通过逻辑组合进行解耦
- 组合模式
将多个对象整合在一起,提供统一的接口调用
- 装饰器模式
将对象放入另一对象内,继承的一种替代模式
- 外观模式
向外提供简单的结构,隐藏系统的复杂性
- 享元模式
对象池
- 代理模式
增加中间层,代理控制对象的访问,减少资源的占用
行为型模式
关注对象之间的通信
- 责任链模式
将过滤条件对象化,并且排列开来,依次执行过滤
- 命令模式
将命令封装为对象,方便对调用命令的更改和扩充
- 解释器模式
文法解释器
- 迭代器模式
用迭代器来进行序列访问,隐藏直接对象内部的复杂性
- 中介者模式
通过中介者来进行消息共享
- 备忘录模式
在对象外部通过“备忘录”记录对象状态,用来恢复对象状态
- 观察者模式
某一对象变化后,直接通知对应的观察者进行更新
- 状态模式
状态对象来管理具体的对象,改变状态就像是改变了对象
- 空对象模式
用空对象来应对NULL的检查
- 策略模式
讲策略算法封装起来,更换对象即是更换算法
- 模板模式
对象实现接口的模式
- 访问者模式
通过访问者的不同,进行不同的算法运算,实现数据与操作的分离