将抽象部分与实现部分分离,使得她们两个部分可以独立的变化。

抽象类(Abstraction):定义抽象类的接口,维护一个Implementor(实现抽象类)的对象。

扩充抽象类(RefinedAbstraction):扩充由Abstraction定义的接口。

实现类接口(Implentor):定义实现类的接口,着个借口不一定要与Abstraction的接口完全一致,事实上这两个接口可以完全不同,一般来讲,Implementor接口仅提供基本操作,而Abstraction定义的接口肯呢个会做更多更复杂的操作。

具体实现类(ConnreteImplementor):实现Implementor接口并且具体实现它。

范例:1.男人的约会一定会有个女人,但约会的地点有女人提出,这样的地点会因为所约的女人不同而变化,

2.假设我们开发一个图像观察软件,可以再windows下查看BMP图像格式,同时我们有扩展它的功能,可以再windows下查看JPEG,GIF,也可以在Linux查看这些图像格式。如果我们采用桥接模式,就会把抽象于实现分开。

优势和缺陷:

桥接模式可以从接口分离实现功能,使得设计更具有扩展性,这样,客户调用方法是根本不需要知道实现的细节。桥接默哀是减少了子类,如果程序中要在2个操作系统中实现查看6种图像格式,那么就会有2*6个类。使用桥接模式时候就会变成2+6个类了,,它使代码变得更清洁了,生成的执行程序更小了。但是桥接模式的缺陷是抽象类与实现类的双向连接使得运行速度更慢了。

应用情景:

1.       你想避免抽象方法和其实现方法绑定在一起。

2.       抽象接口和它的实现都需要扩展出子类以备使用

3.       变动实现的方法根本不会影响客户程序调用的部分(甚至不用重新编译)。

桥接模式(Bridge Patten)相关推荐

  1. c++桥接模式bridge

    c++桥接模式bridge 概念 角色和职责 适用于 案例 概念 Bridge 模式又叫做桥接模式,是构造型的设计模式之一.Bridge模式基于类的最小设计原则,通过使用封装,聚合以及继承等行为来让不 ...

  2. 设计模式--桥接模式(Bridge)

    设计模式–桥接模式(Bridge) 1.定义 桥接模式:将抽象部分与它的实现部分分离,使它们可以独立地变化. 2.实例 设想如果要绘制矩形.圆形.椭圆.正方形,我们至少需要4个形状类,但是如果绘制的图 ...

  3. 【愚公系列】2021年12月 二十三种设计模式(七)-桥接模式(Bridge Pattern)

    文章目录 前言 一.桥接模式(Bridge Pattern) 二.使用步骤 角色 示例 总结 优点 缺点 使用场景 前言 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分 ...

  4. 设计模式(16):结构型-桥接模式(Bridge)

    设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容易被他人理解.保证代码可靠性. 毫无疑问,设计模式于 ...

  5. 如何让孩子爱上设计模式 ——10.桥接模式(Bridge Pattern)

    如何让孩子爱上设计模式 --10.桥接模式(Bridge Pattern) 标签: 设计模式初涉 我有故事,你有酒吗?这年头写个技术文不讲个故事都不行,行,我讲: 还有发现很多的技术博文都开始有喜欢往 ...

  6. 路由WDS 中继模式Repeater和桥接模式Bridge的区别,同时WDS对网速的影响

    WDS (Wireless Distribution System)无线分布式系统,是无线连接两个接入点(AP)的协议.在整个WDS无线网络中,把多个AP通过桥接或中继器的方式连接起来,使整个局域网络 ...

  7. 【设计模式自习室】桥接模式 Bridge Pattern:处理多维度变化

    前言 <设计模式自习室>系列,顾名思义,本系列文章带你温习常见的设计模式.主要内容有: 该模式的介绍,包括: 引子.意图(大白话解释) 类图.时序图(理论规范) 该模式的代码示例:熟悉该模 ...

  8. 桥接模式--Bridge

    桥接模式--Bridge 摘要 一.桥接模式 二.桥接模式的实现 2.1 场景设计 2.2 代码实现 2.2.1 Store 商店抽象类 2.2.2 KFC 商店具体类KFC 2.2.3 MCD 商店 ...

  9. 设计模式之桥接模式(Bridge)摘录

    23种GOF设计模式一般分为三大类:创建型模式.结构型模式.行为模式. 创建型模式包括:1.FactoryMethod(工厂方法模式):2.Abstract Factory(抽象工厂模式):3.Sin ...

  10. 桥接模式(Bridge)解析例子

    桥接模式属于对象结构型模式,其意图是将抽象的部分和它的实现部分分离,使他们都可以独立的变化.当一个抽象可能有多个实现时,通常用继承来协调他们.抽象类的定义对该抽象的接口.而具体的子类则用不同的方式加以 ...

最新文章

  1. android:fitsSystemWindows=“true”
  2. MySQL数据库开发理念_mysql之数据库基本理念
  3. Fedora WIFI频繁断开问题的解决办法
  4. 除夕之夜快乐!自费送10个无人机给大家
  5. 搞懂分布式技术8:负载均衡原理剖析
  6. 机器学习 深度学习 ai_如何突破AI炒作成为机器学习工程师
  7. ABP入门系列(8)——Json格式化
  8. linux下的scp命令大全
  9. Unity-ShaderLab 逆向还原《原神》角色卡通渲染思路与实现(保姆级教学)-1
  10. PR基础学习(四) 简单裁剪视频
  11. 掌握如何使用Rose绘制活动图的方法
  12. 白话 RESTful,OpenApi(OAS),Swagger
  13. 2017 ACM - ICPC Asia Ho Chi Minh City Regional Contest
  14. 51单片机简单计时器
  15. 重磅 | 智能工厂整体实施方案(附PPT下载)
  16. 【splishsplash】修复catch.hpp的问题
  17. 随机模拟在多排服务器上的应用,在Excel中应用随机函数模拟多服务台单队列排队系统...
  18. PDF文件打开口令如何破解
  19. win7安装linux子系统,linux系统装win7系统安装教程【图文教程】
  20. DDD系列第五讲:聊聊如何避免写流水账代码

热门文章

  1. 碳中和专利创新专题:各省市县专利面板(原始文件)、低碳专利授权数等多指标数据
  2. PeopleSoft登录流程
  3. C语言中的小知识1~20
  4. 手动清楚smsc病毒
  5. hdu 3876 A pupil’s problem(简单数学题)
  6. buuctf——pyre
  7. 关于数据库在不同服务器之间导入导出时出现的时间同步问题
  8. 在UEFI模式下,linux误删EFI分区后,重新恢复引导
  9. 货币政策的目标、工具、中性利率、货币乘数及对宏观经济的影响分析
  10. UserWarning: Failed to load image Python extension: [WinError 126] 找不到指定的模块。 warn(f“Failed to load