桥接模式:桥接模式的一个例子是这样的,用毛笔和用蜡笔作画,用蜡笔作画的时候需要12种颜色的蜡笔大中小号各一只,同样的模式用毛笔只需要十二种颜色和大中小号毛笔三支,把3*12的问题变成了3+12的问题。
桥接模式与适配器模式有很多相似性,它们的共同点是:都是让两样东西协作,不同点是:出发点不同。适配器是改变已有的接口,让他们相容,桥接模式是分离抽象化和实现,使两者的接口可以不同,目标是分离,简单的来说,就是先搭桥,至于现在桥两边有没有东西,无所谓,是什么,也无所谓,根据桥再来创建桥两边的东西。上例中笔和颜色就是桥两边的东西。
桥接模式的用意是”将抽象化与实现化脱耦“,使得两者可以独立的变化,关键是否可以脱耦。
桥接模式的适用情况:1.如果一个系统需要在构件的抽象化角色和具体化角色之间增加更多的灵活性,避免在两个层次之间建立静态的联系。2.设计要求实现化的角色的任何改变不应该影响客户端,或者说是完全透明的。