桥接模式
使用桥接模式, 不只改变你的实现, 也改变你的抽象
案例
背景: 各电视有其遥控器实现, 现随着电视越来越多, 遥控器也要满足功能的拓展
使用桥接模式后
使之变成两个层次结构, 一个是遥控器, 另一个是平台特定的电视机实现, 有了桥接的存在, 可以独立的改变这两个层次, 对遥控器的具体实现的更改, 不会影响到客户
生成器模式(建造者模式)
使用生成器模式封装一个产品的构造过程, 并允许按步骤构造
**
- 将复杂对象的创建过程封装起来
- 允许对象可以通过多个步骤来创建, 并且可以改变过程(与只有一个步骤的工厂模式不同)
- 向客户隐藏内部产品的实现
- 产品的实现可以被替换, 因为客户只看到一个抽象的接口
责任链模式
当你想要一个以上的对象有机会能够处理某个请求的时候, 就使用责任链模式
**
- 责任链将请求的发送者和接受者解耦
- 可以简化对象, 因为他不需要知道链的结构
- 可以改变链内的成员或者调动他们的次序, 允许你动态的新增或删除责任
蝇量模式(享元模式)
如想让某个类的一个实例能用来提供许多”虚拟实例”, 就使用蝇量模式
解释器模式
中介者模式
备忘录模式
原型模式
访问者模式
当你想要为一个对象的组合增加新的能力, 且封装并不重要时, 就使用访问者模式
**