GOF 23种设计模式——桥接模式(Bridge)
桥接模式(Bridge)是一种结构型设计模式。 定义: 桥接模式将抽象部分与实现部分分离,使他们都可以独立的进行变化。 主要特点: 把抽象(Abstraction)与行为实现(Implementation)分离开来,从而可以保持各部分的独立性以及应对他们的功能扩展。 桥接模式的UML图如下: 桥接模式的角色和职责: 1. Client 调用端 这是Bridge模式的调用者。 2. 抽象类(Abstraction) 抽象类接口(接口这货抽象类)维护队行为实现(implementation)的引用。它的角色就是桥接类。 3. Refined Abstraction 这是Abstraction的子类。 4. Implementor 行为实现类接口(Abstraction接口定义了基于Implementor接口的更高层次的操作)。 Implementor定义实现部分的接口,该接口不一定要与Abstraction的接口完全一致,事实上这两个接口可以完全不同。一般来说,Implementor接口仅提供基本操作,而Abstraction则定义基于这些基本操作的较高层次的操作。 5. ConcreteImplementor Implementor的子类。 使用场景 举个栗子 注意:这里的抽象部分和实现部分只是两个独立变化的维度,独立变化。 我们平常喝咖啡的时候分别有大杯小杯的,还有加糖和不加糖的