软设之桥接模式

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

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

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

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

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

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

相关推荐
Z.风止4 小时前
Large Model-learning(3)
人工智能·笔记·后端·深度学习
东京老树根6 小时前
SAP学习笔记 - BTP SAP Build02 - Deploy,开始URL,Approve,Reject,履历确认,Log,Context
笔记·学习
zjeweler6 小时前
“网安+护网”终极300多问题面试笔记-全
笔记·网络安全·面试·职场和发展
仲芒6 小时前
[24年单独笔记] MySQL 常用的 DDL 命令
笔记·mysql·oracle
仲芒7 小时前
[24年单独笔记] MySQL 常用的 DML 命令
数据库·笔记·mysql
lwewan7 小时前
CPU 调度
笔记·考研
John.Lewis8 小时前
C++进阶(6)C++11(2)
开发语言·c++·笔记
CheerWWW9 小时前
C++学习笔记——栈内存与堆内存、宏、auto、std::array
c++·笔记·学习
-许平安-9 小时前
MCP项目笔记十(客户端 MCPClient)
c++·笔记·ai·raii·mcp·pluginapi·plugin system