美文网首页
设计模式:桥接模式

设计模式:桥接模式

作者: JengCode | 来源:发表于2020-11-10 16:41 被阅读0次
0x01 背景

当一个类存在一个(或多个)变化的维度时,如果采用继承的方式来定义不同的实现,会导致实现类数量呈指数爆炸,比如对于画布来说,形状上有三种:正方形、长方形、圆形,颜色上有三种颜色:红色,蓝色、绿色。一共有3 * 3 =9种画布,如果采用继承的方式来实现具体的画布类,则有9种画布类,而且每添加一种形状(如椭圆)画布,需要实现所有颜色的椭圆形画布类,类似的每添加一种颜色,就需要实现该颜色的所有形状的画布类,这样会导致类个数的指数爆炸。桥接模式就是为了这样的问题。

0x02 桥接模式
  1. 将抽象和实现解耦,让他们可以独立变化
  2. 一个类存在两个(或多个)独立变化的维度,我们可以通过组合的方式,让这两个(或多个)维度可以独立进行扩展
  3. 通过组合关系代替继承关系,避免继承层次的指数级爆炸。

桥接模式遵循“组合优于继承”的设计原则

2.1 桥接模式的UML类图
image.png

桥接模式将形状和颜色这两个不同的变化维度拆分开:AbstractShap(抽象类)和Color(接口),让这两种维度独立变化,然后通过组合的方式将这两种维度组合在一起,所以最终类的个数只有:形状个数 + 颜色个数。

2.2 桥接模式的应用场景

当一个类存在两个(或多个)独立变化的维度时,可以将两个(或多个)维度拆分开独立变化,然后通过组合的方式进行扩展。

相关文章

  • 设计模式-桥接模式

    设计模式-桥接模式 定义 桥接模式(Bridge Pattern)也称为桥梁模式、接口(Interface)模式或...

  • 桥接模式

    设计模式:桥接模式(Bridge)

  • 设计模式——桥接模式

    设计模式——桥接模式 最近公司组件分享设计模式,然而分配给我的是桥接模式。就在这里记录我对桥接模式的理解吧。 定义...

  • 设计模式之桥接模式

    设计模式之桥接模式 1. 模式定义 桥接模式又称柄体模式或接口模式,它是一种结构性模式。桥接模式将抽象部分与实现部...

  • 桥接模式

    介绍 桥接模式(Bridge Pattern) 也称为桥梁模式,是结构型设计模式之一。桥接模式的作用就是连接 "两...

  • Java设计模式——桥接模式

    Java设计模式之桥接模式 回顾 上一期分享了适配器模式,主要为了实现解耦 桥接模式 简介 桥接模式是对象的结构模...

  • 设计模式-桥接模式

    桥接模式介绍 桥接模式(Bridge Pattern)也称为桥梁模式,是结构型设计模式之一。顾名思义其与现实中的桥...

  • Android设计模式——桥接模式(七大结构型)

    1.桥接模式介绍 桥接模式(Bridge Pattern)也称为桥梁模式,是七大结构型设计模式之一。 2....

  • 2、桥接模式(结构型)

    第一次接触桥接模式是在刷面试题时,遇到问jdbc主要用到的设计模式是?桥接模式。 桥接模式(Bridge):将抽象...

  • Java设计模式<桥接模式>

    Java设计模式<桥接模式> 意图 桥接模式就是把事物和其具体实现分开,使他们可以各自独立的变化。桥接的用意是:将...

网友评论

      本文标题:设计模式:桥接模式

      本文链接:https://www.haomeiwen.com/subject/dpyjbktx.html