adapter模式有哪些好处?这3个优点真的很实用!

吉云

今天来分享一下adapter模式,这名字听着挺唬人,说白就是“转接头”。大家平时肯定都用过,比如港版的iPhone充电器插头,插不到咱们国内的插座里,这时候咋办?买个转接头呗!adapter模式干的就是这事儿。

我之前,在做项目的时候,遇到过这么一个坑。当时项目里要接一个第三方的库,这个库功能挺就是跟咱们自己项目的接口对不上。这就尴尬,不能直接拿来用!

那会儿我咋办的?硬改!我把咱们自己项目的代码改,强行去适应那个第三方库的接口。结果?改完之后,整个项目里好多地方都跟着报错,牵一发而动全身,简直!那几天我真是焦头烂额,天天加班调bug,苦不堪言。

adapter模式有哪些好处?这3个优点真的很实用!

后来我开始反思,这样硬改肯定不行,风险太大。于是我就开始研究设计模式,看有没有啥办法能解决这个问题。然后,我就发现adapter模式,这简直是救星!

我是这么干的:

  • 创建一个新的类,这个类就是“转接头”,它负责把第三方库的接口和我们项目的接口连接起来。
  • 然后,我在这个“转接头”类里面,实现我们项目需要的接口。
  • 我在这个“转接头”类里面,又调用第三方库提供的接口。
  • adapter模式有哪些好处?这3个优点真的很实用!

这样一来,我们项目的其他代码就不用改,直接用这个“转接头”就行。而“转接头”内部,则去跟第三方库打交道。完美地隔离变化!

这么一搞,我发现用adapter模式还有不少好处

  • 省事儿!不用改动原来那些代码,少很多麻烦。
  • 安全!把那些不兼容的东西都封装起来,对我们原来的系统没啥影响。
  • adapter模式有哪些好处?这3个优点真的很实用!

  • 再者,好用!以后再遇到类似的接口不兼容的情况,咱就照这个套路来,简单方便。

啥东西都有两面性,adapter模式也有它的缺点

  • 就是如果“转接头”用多,整个项目看起来可能会有点乱,各种转接看着头晕。
  • 然后,如果“转接头”没写可能会让系统变慢。
  • adapter模式有哪些好处?这3个优点真的很实用!

所以说,这个adapter模式,就像那个充电器的转接头一样,虽然好用,但也不能滥用。得根据实际情况来,该用的时候用,不该用的时候就别瞎用。

这回使用adapter模式的经历,让我对这个模式有更深刻的理解。也让我明白,在写代码的时候,不能一味地追求“能跑就行”,还得考虑代码的可维护性、可扩展性。毕竟咱们写代码,不仅仅是为完成任务,更是为创造一个更美好的程序世界,对!

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]