设计模式之——桥接模式(Bridge)

定义

        桥接模式即将抽象部分与它的实现部分分离开来,使他们都可以独立变化。

  • 抽象化:
            其概念是将复杂物体的一个或几个特性抽出去而只注意其他特性的行动或过程。在面向对象就是将对象共同的性质抽取出去而形成类的过程。

  • 实现化:
            针对抽象化给出的具体实现。它和抽象化是一个互逆的过程,实现化是对抽象化事物的进一步具体化。

  • 脱耦:
            脱耦就是将抽象化和实现化之间的耦合解脱开,或者说是将它们之间的强关联改换成弱关联,将两个角色之间的继承关系改为关联关系。

结构

桥接(Bridge)模式包含以下主要角色。

  • 抽象化(Abstraction)角色:定义抽象类,并包含一个对实现化对象的引用。

  • 扩展抽象化(Refined Abstraction)角色:是抽象化角色的子类,实现父类中的业务方法,并通过组合关系调用实现化角色中的业务方法。

  • 实现化(Implementor)角色:定义实现化角色的接口,供扩展抽象化角色调用。

  • 具体实现化(Concrete Implementor)角色:给出实现化角色接口的具体实现。

在这里插入图片描述

简单的说就是我们需要对多类对象进行多维度的扩展,若使用继承则会使父类对象的数量和种类庞大。而桥接模式是为了避免抽象对象数量过多而采用的模式。

应用

  • 电商商品根据品牌、适用者、价格、材料等条件进行筛选;
  • 与适配器模式区别:分离抽象化和实现,使两者的接口可以不同,目的是分离。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值