软设之桥接模式

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

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

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

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

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

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

相关推荐
lengxuemo5 小时前
ICC2学习笔记之Placement and Optimization
笔记·学习
sheeta19986 小时前
LeetCode 每日一题笔记 日期:2026.06.02 题目:3635. 最早完成陆地和水上游乐设施的时间 II
笔记·算法·leetcode
小满Autumn7 小时前
MVVM Light 架构笔记:定位器、命令、消息与 IoC 实践
笔记·学习·架构·c#·上位机·mvvm
kobesdu8 小时前
【ROS2实战笔记-24】ROS2 Launch 实用技巧:条件逻辑与节点动态生成
笔记·ros·slam
小满Autumn8 小时前
CommunityToolkit.Mvvm 架构笔记:现代 MVVM、源生成器与工程化实践
笔记·架构·c#·.net·wpf·mvvm
imDwAaY10 小时前
贝叶斯网络到粒子滤波Python算法实现 CS188 Proj4 学习笔记
网络·人工智能·笔记·python·学习·算法
咸甜适中11 小时前
rust语言学习笔记Trait(十五)Drop(释放资源)
笔记·学习·rust
IT笔记12 小时前
【Rust】 Rust宏学习笔记
笔记·学习·rust
tianxingjian201912 小时前
从欧盟电池法新规看QFD:如何将合规需求转化为技术特性?
笔记
喜樂的CC12 小时前
NestJS图解笔记
笔记