软设之桥接模式

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

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

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

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

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

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

相关推荐
子辰ToT1 小时前
LearnOpenGL——高级光照(七)HDR
笔记·图形渲染·opengl
山岚的运维笔记2 小时前
SQL Server笔记 -- 第63章:事务隔离级别
数据库·笔记·sql·microsoft·oracle·sqlserver
智者知已应修善业2 小时前
【排列顺序判断是否一次交换能得到升序】2025-1-28
c语言·c++·经验分享·笔记·算法
HuDie3402 小时前
AI产品经理课程笔记
人工智能·笔记·产品经理
lingliang4 小时前
Web3学习笔记:Day2-Solidity基础语法
笔记·学习·web3
开开心心就好4 小时前
实用PDF擦除隐藏信息工具,空白处理需留意
运维·服务器·windows·pdf·迭代器模式·桥接模式·1024程序员节
寒秋花开曾相惜4 小时前
(学习笔记)2.2 整数表示(2.2.3 补码编码)
c语言·开发语言·笔记·学习
winfreedoms4 小时前
ros2开发入门——黑马程序员ROS2上课笔记
笔记
Evand J5 小时前
matlab GUI制作界面的一些笔记(入门)
开发语言·笔记·matlab
Coder_Boy_5 小时前
Java高级_资深_架构岗 核心知识点全解析(模块四:分布式)
java·spring boot·分布式·微服务·设计模式·架构