【笔记整理】图解设计模式 | 第2章 Adapter模式(加个“适配器”以便于复用)

【笔记整理】图解设计模式 | 导航


定义

  • 在程序世界中,经常会存在现有的程序无法直接使用,需要做适当的变换之后才能使用的情况。这种用于填补“现有的程序”和“所需的程序”之间差异的设计模式就是Adapter模式

Adapter模式中的登场角色

  • Target(对象)
  • Client(请求者)
  • Adaptee(被适配)
  • Adapter(适配)

类适配器模式的类图(使用继承)

对象适配器模式的类图(使用委托)


拓展思路的要点

  • 什么时候使用Adapter模式?可以认为现有的类经过充分测试过,Bug很少。Adapter模式会对现有的类进行适配,生成新的类。当出现Bug,只排查新的类即可。
  • 现有的类还不能满足需求,但是有一部分可以复用,复用现有的类是明智的选择,修改则违背开闭原则。Adapter模式可以在完全不改变现有代码的前提下使现有代码适配于新的接口(API)。
  • 版本升级与兼容。让新版本扮演Adaptee角色,旧版本扮演Target角色。接着编写一个扮演Adapter角色的类,让它使用新版本的类来实现旧版本的类中的方法。
  • 功能完全不同的类,就不要用Adapter模式了。

相关的设计模式

  • Bridge模式(第9章)

       Adapter模式用于连接接口(API)不同的类,而Bridge模式则用于连接类的功能层次结构与实现层次结构。

  • Decorator模式(第12章)

       Adapter模式用于填补不同接口(API)之间的缝隙,而Decorator模式则是在不改变接口(API)的前提下增加功能。

本章所学知识

       注意“使用继承”和“使用委托”这两种实现Adapter模式的方式和它们各自的特征。

       

注:博客中的图片来自网上。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值