翻译翻译什么是适配器模式?

Posted 掘金安东尼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了翻译翻译什么是适配器模式?相关的知识,希望对你有一定的参考价值。

说到:适配器,大家一定不会陌生:

所有的充电头,就是适配器,用于适配电源插孔和需要充电的设备;

同理,适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于【结构型模式】,它结合了两个独立接口的功能。

代码示例也非常直观:

class Adapter 
specificRequest()
return 手机充电接口


class Target
constructor()
this.adapter = new Adapter()

request()
let info = `$this.adapter.specificRequest()---通过适配器接入到---充电插头`
return info


let target = new Target()
console.info(target.request())

// 手机充电接口---通过适配器接入到---充电插头

当我们有动机地修改一个正常运行的系统的接口,这时应该考虑使用适配器模式。

不过,它也有一个要特别注意的缺点,即:过多地使用适配器,会让系统非常零乱,不易整体进行把握。比如,明明看到调用的是 A 接口,其实内部被适配成了 B 接口的实现,一个系统如果太多出现这种情况,无异于一场灾难。因此如果不是很有必要,可以不使用适配器,而是直接对系统进行重构。

不过,它的好处呢,就是:可以让任何两个没有关联的类一起运行。 2、提高了类的复用。

// 使用ES6改写适配器实现地图SDK统一渲染
class googleMap
show()
console.log(开始渲染谷歌地图);


class baiduMap
display()
console.log(开始渲染百度地图);


class baiduMapAdapter extends baiduMap
constructor()
super();

show()
this.display();


// 外部调用者
function renderMap(map)
map.show(); // 统一接口调用

renderMap(new googleMap());
renderMap(new baiduMapAdapter());

// 开始渲染谷歌地图
// 开始渲染百度地图

OK,以上就是本篇分享,你“学废”了吗?

我是掘金安东尼,输出暴露输入,技术洞见生活。

以上是关于翻译翻译什么是适配器模式?的主要内容,如果未能解决你的问题,请参考以下文章

[Python设计模式] 第17章 程序中的翻译官——适配器模式

结构型模式《大话设计模式》——读后感 (12)在NBA我需要翻译?——适配器模式

设计模式之适配器模式与外观模式

设计模式 || 适配器模式

初步认知:适配器模式

设计模式 之 适配器模式与外观模式