桥接模式

来源:互联网 发布:有趣的淘宝收货人名字 编辑:程序博客网 时间:2024/05/16 15:45

合成/聚合复用原则:尽量使用合成/聚合,尽量不要使用类继承。聚合表示一种弱的 ‘拥有’ 关系,体现A对象可以包含B对象,但B对象不是A对象的一部分;合成则是一种强的‘拥有’ 关系,体现了严格的部分和整体的关系,部分和整体的生命周期一样,比方说雁有两个翅膀,翅膀与大雁是部分与整体的关系,并且它们的生命周期是相同的,于是大雁和翅膀就是合成关系,而大雁是群居动物,所以每只大雁都是属于一个雁群,一个雁群可以有多只大雁,所以大雁和雁群是聚合关系。

桥接模式(Bridge):将抽象部分与它的实现部分分离,使他们都可以独立地变化。

UML:


当按软件分类和按品牌分类都添加品牌或增加软件都需要增加大量派生类时


可以把每个分类独立粗来,让它们各自变化,再使用聚合关系将它们联系起来。这种模式就是聚合模式


应用场合:当实现系统可能有多个角度分类,每一种分类都有可能变化,那么就把这种多角度分离出来让它们独立变化,减少它们之间的耦合,也就是说,在发现我们需要多角度去分类实现对象的时候,就应该考虑用桥接模式了。


原创粉丝点击