Abstract Factory: 提供一个创建一系列相关或相互依赖对象的接口,而无需指定他们具体的类。
Adapter: 将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
Bridge: 将抽象部分与它的实现部分分离,使他们可以独立地变化。
Builder: 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
Chain of Responsibility: 为解除请求的发送者和接收者之间耦合,而使多个对象都有机会处理这个请求。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它。
Command:
Composite:
Decorator:
Facade:
Factory Method:
Flyweight:
Interpreter:
Iterator:
Mediator:
Memento:
Observer:
Prototype:
Proxy: 为其他对象提供一个代理以控制对这个对象的访问。
Singleton: 保证一个类仅有一个实例,并提供一个访问它的全局访问点。
State:
Strategy:
Template Method:
Visitor: 表示一个作用于某对象结构中的各元素的操作。它可以使你在不改变各元素的类的前提下定义作用于这些元素的新操作。