26. 23种经典模式
对变化的封装,分离变化。
|
创建型 |
|
|
Abstract Factory |
一系列相关对象的创建。不同产品,有相同的系列。 |
|
Builder |
同样的构建过程可以创建不同的表示 |
|
Factory Method(类) |
子类进行实例化 |
|
Prototype |
通过原型实例拷贝创建新对象 |
|
Singleton |
一个类只有一个实例 |
|
结构型 |
|
|
Adapter |
转换接口 |
|
Bridge |
抽象的实现分离 |
|
Composite |
树形,整体和部分一致对待 |
|
Decorator |
动态添加职责,有本体和装饰器 实例:商品拆单,按商家,按库房,又加入按商品,metric监控等。(注意和责任链的关系) |
|
Facade |
子系统提供统一接口。1.了解少。2.子系统易变化 |
|
Flyweight |
共享细粒度对象,内部状态和外部状态 |
|
Proxy |
功能一样,更轻量级(懒加载) |
|
行为模式 |
|
|
Chain of responsibility |
多个对象可以处理同一请求,直到一个对象处理 实例:用户登录,和装饰器最大在的区别是可以Kill。 |
|
Command |
生成命令和执行分离,排除或撤销 |
|
Interpreter(解释器) |
给定一个语言,并可以解释它。(如正则) |
|
Iterator |
访问聚合中的元素,不暴露内部实现 |
|
Mediator(中介者) |
解除一系列对象的网状结构 |
|
Memento(备忘录) |
不破坏封装的前提下,保存和恢复对象的状态 |
|
Observer |
一对多依赖关系,一变多通知 |
|
State |
不同状态下有不 同形为,把不同行为封闭到不同实现类中,改变状态属性 |
|
Strategy |
封装算法 |
|
template method |
算法骨架,子类实现细节 |
|
visitor |
不改变一系列类,为一系列列添加新操作 |
template method用组合实现就是strategy,骨架也可变就是桥接。

浙公网安备 33010602011771号