适配器模式 Adapter

一种结构型设计模式,它允许将不兼容的对象转换成可兼容的接口。主要目的是解决在不改变现有代码的情况下,使不兼容的接口之间能够正常工作,通过创建一个中间转换的适配器来将一个对象转换成我们所需要的接口。

场景: 当你原来的某个类或接口不想改动,就只想重用现有的代码;或者现有的某个第三方组件功能提供的输入输出格式和你想要的不匹配;还有就是当你想要适配不同平台或服务商。

**主要分为三类:**类的适配器模式、对象的适配器模式、接口的适配器模式。

优点:

  • 安全可靠:封装了旧接口,对客户端透明,客户端代码无需修改。
  • 提高复用性:可以复用不兼容的类;可以对不同的类无需修改,就可以进行组合。
  • 扩展性好:在应用程序开发过程中,可以增加新的适配器和被适配对象。

缺点:

  • 过多的适配器会导致系统结构复杂。
  • 如果适配器没有实现好,可能会拖慢整个系统的性能。
  • 滥用适配器模式会导致系统设计紊乱。

Reference

适配器设计模式(封装器模式) (refactoringguru.cn)

设计模式第9讲------适配器模式(Adapter)-CSDN博客

相关推荐
GISer_Jing4 小时前
智能体工具使用、规划模式
人工智能·设计模式·prompt·aigc
GISer_Jing4 小时前
AI Agent:学习与适应、模型上下文协议
人工智能·学习·设计模式·aigc
小马爱打代码6 小时前
MyBatis设计模式:构建者、工厂、代理模式
设计模式·mybatis·代理模式
月明长歌6 小时前
Javasynchronized 原理拆解:锁升级链路 + JVM 优化 + CAS 与 ABA 问题(完整整合版)
java·开发语言·jvm·安全·设计模式
会员果汁6 小时前
12.设计模式-状态模式
设计模式·状态模式
Yu_Lijing7 小时前
基于C++的《Head First设计模式》笔记——抽象工厂模式
c++·笔记·设计模式
会员果汁10 小时前
13.设计模式-适配器模式
设计模式·适配器模式
GISer_Jing1 天前
AI:多智能体协作与记忆管理
人工智能·设计模式·aigc
雨中飘荡的记忆1 天前
责任链模式实战应用:从理论到生产实践
设计模式
沛沛老爹1 天前
Web开发者进阶AI:Agent技能设计模式之迭代分析与上下文聚合实战
前端·人工智能·设计模式