软设之桥接模式

桥接模式的意图是:将抽象部分与它的实现部分分离,使它们都可以独立变化。

比如说汽车是一个抽象的概念,但汽车有不同品牌和型号,这些汽车有不同的驱动方式,比如烧油或者电动。假如用传统的方式,每增加一个品牌或者型号,就得改大量代码。采用桥接模式,可以将汽车品牌和型号分离。先定义一个汽车类,类中包含指向驱动的接口。驱动方式创建一个汽油类和电动类。这样每当创建一个新的信号,只需要指定品牌型号的子类,并连接驱动方式的类。

Abstraction:抽象类定义抽象类的接口。维护一个Implementor的对象

RefinedAbstraction:扩充的抽象类,扩充由Abstraction定义的接口

Implementor:实现类接口,定义实现类的接口,这个接口不一定要与Abstraction的接口完全一致,事实上这两个接口可以完全不同,一般的讲Implementor接口仅仅给出基本操作,而Abstraction接口则会给出很多复杂的操作

Concrelmplementor:具体实现类,实现Implementor定义的接口并且具体实现它。

相关推荐
nqqcat~30 分钟前
shell入门
笔记
Aaswk1 小时前
刷题笔记(回溯算法)
数据结构·c++·笔记·算法·leetcode·深度优先·剪枝
workflower1 小时前
设计模式的分类
设计模式·集成测试·软件工程·软件构建·软件需求·结对编程
-许平安-2 小时前
MCP项目笔记六(PluginsLoader)
c++·笔记·raii·plugin system
开源盛世!!2 小时前
3.26-3.27学习笔记
笔记·学习
智者知已应修善业2 小时前
【文氏电桥振荡电路】2022-8-25
驱动开发·经验分享·笔记·硬件架构·硬件工程
小趴菜_自动驾驶搬砖人3 小时前
数据校验学习笔记 ———— 模逆运算
笔记
大连好光景3 小时前
软件测试笔记(1)
笔记·功能测试·测试工具
han_3 小时前
JavaScript设计模式(五):装饰者模式实现与应用
前端·javascript·设计模式
Hammer_Hans3 小时前
DFT笔记33
笔记