Bridge桥接模式 - GoF设计模式(一)
2010-08-11 23:11
218 查看
1. 类别:对象结构型模式
2. 意图:将抽象部分与它的实现部分分离,使得它们可以独立地变化。(抽象与行为分离更准确)
3. 结构:
4. 参与者:
l Abstraction:定义抽象类的接口,维护一个指向Implementor类型的指针。
l RefinedAbstraction:扩充由Abstraction定义的接口
l Implementor:定义实现类的接口。一般而言,Implementor听过基本操作,而Abstraction则定义基于这些基本操作的较高层次的操作。
l ConcretemImplementor:实现Implementor接口并定义它的具体实现。
5. 适用性:
以一杯咖啡为例:咖啡有中杯和大杯之分,同时还有加奶和不加奶之分。如果使用单纯的继承,需要定义四个具体实现类(中杯 大杯 加奶 不加奶),并且这些概念重叠,因为有中杯加奶,也有中杯不加奶,如果再在中杯这一层再实现两个继承,很显然混乱而且扩展性极差。使用Bridge 模式可以较好解决这一问题。
2. 意图:将抽象部分与它的实现部分分离,使得它们可以独立地变化。(抽象与行为分离更准确)
3. 结构:
4. 参与者:
l Abstraction:定义抽象类的接口,维护一个指向Implementor类型的指针。
l RefinedAbstraction:扩充由Abstraction定义的接口
l Implementor:定义实现类的接口。一般而言,Implementor听过基本操作,而Abstraction则定义基于这些基本操作的较高层次的操作。
l ConcretemImplementor:实现Implementor接口并定义它的具体实现。
5. 适用性:
以一杯咖啡为例:咖啡有中杯和大杯之分,同时还有加奶和不加奶之分。如果使用单纯的继承,需要定义四个具体实现类(中杯 大杯 加奶 不加奶),并且这些概念重叠,因为有中杯加奶,也有中杯不加奶,如果再在中杯这一层再实现两个继承,很显然混乱而且扩展性极差。使用Bridge 模式可以较好解决这一问题。
相关文章推荐
- c++ 设计模式之桥接模式(Bridge)
- 设计模式学习笔记——桥接(Bridge)模式
- 设计模式之桥接模式(Bridge)
- 设计模式-----桥接模式(Bridge Pattern)
- (7)设计模式笔记[桥接模式Bridge]
- 设计模式 - 桥接模式(BRIDGE)
- 设计模式--桥接模式Bridge(结构性)
- 设计模式之桥接模式(Bridge)摘录
- 设计模式之桥接模式(Bridge)
- 设计模式 – 桥接模式(Bridge)
- 设计模式之桥接模式(Bridge模式)
- 温故而知新:设计模式之桥接模式(Bridge)
- [GoF设计模式]Bridge模式和Template模式的C++实现
- 笔记:Gof设计模式--Bridge
- 设计模式之Bridge(桥接)
- IOS设计模式浅析之桥接模式(Bridge)
- 设计模式 笔记 桥接模式 Bridge
- 设计模式(6)-Bridge 桥接模式
- 设计模式(七)----- 桥接模式(Bridge)----(JAVA版)
- Java设计模式(八):桥接模式bridge