桥梁模式(Bridge Pattern)
定义:Decouple an abstraction from its implementation so that the two can
vary independently.(将抽象和实现解耦,使得两者可以独立地变化。)
组成:
- 抽象(Abstraction )角色:它定义了抽象类的接口而且维护着一个指向实现
(Implementor)角色的引用。 - 精确抽象(RefinedAbstraction)角色:实现并扩充由抽象角色定义的接口。
- 实现(Implementor)角色:给出了实现类的接口,这里的接口与抽象角色中的接口可以不一致。
- 具体实现(ConcreteImplementor)角色:给出了实现角色定义接口的具体实现。
应用场景:
- 当你的系统中有多个地方要使用到类似的行为,或者是多个类似行为的组合时,可以考
虑使用桥梁模式来提高重用,并减少因为行为