美文网首页
Bridge模式(结构型)

Bridge模式(结构型)

作者: 潭潭_180 | 来源:发表于2018-09-14 17:29 被阅读0次

将两个角色之间的继承关系改为聚合关系,就是将它们之间的强关联改换成为弱关联。因此,桥接中的所谓脱耦,就是指在一个软件系统的抽象化和实现化之间使用组合/聚合关系而不是继承关系,从而使两者可以相对独立地变化。这就是桥梁模式的用意。

Bridge模式的结构图如下:

Bridge 模式

Bridge 模式将抽象和实现分别独立实现, 在代码中就是 Abstraction 类和 AbstractionImp类。

讨论:

Bridge 是设计模式中比较复杂和难理解的模式之一, 也是 OO 开发与设计中经常会用到的模式之一。 使用组合( 委托) 的方式将抽象和实现彻底地解耦, 这样的好处是抽象和实现可以分别独立地变化,系统的耦合性也得到了很好的降低。

 GoF 的那句话中的“实现” 该怎么去理解:“实现”特别是和“抽象” 放在一起的时候我们“默认” 的理解是“实现” 就是“抽象” 的具体子类的实现,但是这里GoF 所谓的“实现”的含义不是指抽象基类的具体子类对抽象基类中虚函数(接口) 的实现, 是和继承结合在一起的。 而这里的“实现” 的含义指的是怎么去实现用户的需求, 并且指的是通过组合(委托) 的方式实现的, 因此这里的实现不是指的继承基类、实现基类接口,而是指的是通过对象组合实现用户的需求。

实际上上面使用 Bridge 模式和使用带来问题方式的解决方案的根本区别在于是通过继承还是通过组合的方式去实现一个功能需求。因此面向对象分析和设计中有一个原则就是:Favor Composition Over Inheritance。 其原因也正在这里。

相关文章

  • 设计模式之桥接(Bridge)

    概述 桥接模式(Bridge)是一种结构型设计模式。Bridge模式基于类的最小设计原则,通过使用封装、聚合及继承...

  • 结构型模式:桥接模式

    文章首发:结构型模式:桥接模式 七大结构型模式之二:桥接模式。 简介 姓名 :桥接模式 英文名 :Bridge P...

  • Bridge模式(结构型)

    将两个角色之间的继承关系改为聚合关系,就是将它们之间的强关联改换成为弱关联。因此,桥接中的所谓脱耦,就是指在一个软...

  • Android 桥接模式

    Android 23种设计模式 一、前言 Android桥接(Bridge)模式,又被称为桥梁模式。结构型模式之一...

  • 桥接模式

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

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

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

  • 必知必会的设计模式2

    桥接模式(Bridge Pattern) 属结构型设计模式,也称桥梁模式,「将抽象和实现解耦,使得两者可以独立地变...

  • 设计模式-桥接模式

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

  • 桥接模式 -- 分离功能层次结构和实现层次结构

    1. 概述 桥接模式(Bridge Pattern)是一种结构型设计模式。在理解桥接模式前,我们要先能够区分“类的...

  • Java学习笔记(10)-23种设计模式之桥接模式(Bridge

    今天总结结构型模式的第三种模式,桥接模式(Bridge模式)。 定义 将抽象与实现分离,使他们可以独立变化,它利用...

网友评论

      本文标题:Bridge模式(结构型)

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