设计模式 - 适配器模式 笔记

驱动力:复用现有功能,解决接口不匹配的问题。

"当你需要使用一个现成的类,但它的接口和你现在的系统格格不入,且你无权或不想修改它时,适配器就是你最直接的解决方案。"


定义

适配器模式是一种结构型设计模式,它将一个类的接口转换成客户端期望的另一个接口,使原本因接口不匹配而无法一起工作的类能够协同工作。

核心角色

  1. 目标接口(Target):客户端期望使用的接口

  2. 适配者(Adaptee):需要被适配的已有类,其接口不兼容

  3. 适配器(Adapter):实现目标接口,内部持有适配者对象,进行接口转换

优点:

  • ✅ 提高复用性

  • ✅ 符合开闭原则,不修改原代码

【例子】 出国旅游充电:

  • 你从中国带了一个手机充电器(两孔扁插头)

  • 到了英国,墙上是三孔方插座

  • 你插不进去,但你又必须充电

  • 你 需要一个 三孔转两孔 的 "转接头" (适配器)

这就是适配器模式的真实需求------不是因为你想用适配器,而是不转接就用不了。

适配器模式,本身逻辑超级土、超级朴素 :

根本没什么高深架构,

说白了就是:

我有个老接口/第三方API长得乱七八糟,我包一层壳,统一改成我自己项目的标准接口

正常人稍微会封装代码,随手就写出来了,根本不用套「设计模式」名头。

为什么书上非要叫它「适配器模式」?

不是代码多难,是思想规范:

① 规定好:不要改原有第三方/老代码

② 统一收口、隔离变化

③ 遵循开闭原则:新增适配只加类,不改旧业务

相关推荐
sbjdhjd11 小时前
网工进阶笔记:H3CSE 园区网全栈技术与协议汇总
网络·笔记·云计算·ssh·网络工程·vlan·aaa
海绵宝宝的月光宝盒14 小时前
14-AutoCAD-阵列命令应用与案例实战(AR)
经验分享·笔记·自动化·课程设计·制造·学习方法·cad
白山编程大哥16 小时前
接口幂等性是什么?如何设计?
笔记
ACP广源盛1392462567316 小时前
6 盘位存储扩展方案选型笔记:YLB3116 @ACP评估记录
笔记·硬件架构·硬件工程·国产芯片
小李不想当小白16 小时前
SPI通信外设与W25Q64 (硬件SPI)(STM32标准库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·嵌入式
weixin_4481199418 小时前
Datawhale Jev Cookbook 202610 笔记3
笔记
姚瑞南18 小时前
【PRD】招投标商机雷达爬虫系统
人工智能·经验分享·笔记·爬虫·产品运营·产品经理
Gnevergiveup19 小时前
ATT&CK红蓝对抗实战指南-Windows安全基础
笔记·网络安全
kiracrimson19 小时前
栈与队列容器:适配器、deque 与 priority_queue
开发语言·c++·适配器模式
江屿风1 天前
【Plain Language Large Model】【从麦当劳点餐到Redis接入:MCP如何让AI工具集成变简单】流食般投喂
人工智能·redis·笔记·语言模型·llm·mcp