一句话GOF设计模式
创建型模式
Abstract Factory: 生产一系列产品,这种产品可以由不同的公司生产. Themes
Builder: 生产一种产品,这种产品由不同的部分组成,每个部分由特定的公司生产.
Factory Method: 生成一种产品,可以由不同公司生产. PageHandlerFactory
Prototype: 从原有的产品原型中获取产品,拷贝或者克隆. Clone()
Singleton: 运行状态中只能有一个实例存在. GC.Collect()
结构性模式
Adapter: 适配不同的系统的接口,继承自目标系统接口,并进行实现.
Bridge: 分离对象接口与实现,意指接口与实现可同时变化.
Composite: 树形结构实现. 1+2-3*(4-3) 这种. WebControl
Decorator: 动态的给对象添加职责.
Facade:将系统原有接口整合成统一的接口给外界.
Flyweight: 一些用于共享的实例. PDF Structure
Proxy: 对某一类访问的代理层,组合实现. Firewall
行为型模式
Chain of Resp.: 沿着对象事件链传递请求. HttpModule
Command: 封装用户的命令请求,组合实现, UnDo - Redo
Interpreter: 定义一种格式,通过该模式解释这种格式。文法定义. Language Element Definition
Iterator: 迭代访问元素. Iterator
Mediator: 降低耦合,每个成员都知道Mediator,通过Mediator联系传递消息并做出反应.
Memento: 专门有个数据结构保存历史状态. History
Observer: 告知变化,单向. 源 -> 事件接收者
State: 状态改变时通知变化. ToolBox
Strategy: 协议代替实现.
Template Method: 定义处理流程: Page Handle Process
Visitor:与Observer相比,消息发送者可能是多个源,都继承自一个类型(含有Observer)