Day34 【概念解析】适配器模式
行业概念

Day34 【概念解析】适配器模式

· 约 867 字 · 阅读约 5 分钟
目录

整理定义

中文名称:适配器模式

英文名称:adapter pattern

复述展开

What is adapter pattern?

💡 适配器模式是一种结构性对象设计模式,它可以将一个类的接口转化为另一个接口,而不需要修改源代码,从而解决系统间不兼容的问题。

🌰*1

例如,如果需要小汽车在铁轨上执行,需要增加一个可以在铁轨上的给汽车使用的适配器,然后通过适配器在铁轨上行驶。

image

🌰*2

另一个例子,不同国家的交流电的标准是不一样,有双口插头、也有三项插头,那么在出国旅行时,就需要一个电源适配器来使用。

image

🌰*3

同样,在软件工程领域,如果不想修改源代码,而有需要为一个新接口进行适配,那就可以用到适配器模式了。

适配器模式的结构

image

  1. 客户端 (Client) 是包含当前程序业务逻辑的类。

  2. 客户端接口 (Client Interface) 描述了其他类与客户端代码合作时必须遵循的协议。

  3. 服务 (Service) 中有一些功能类 (通常来自第三方或遗留系统)。 客户端与其接口不兼容, 因此无法直接调用其功能。

  4. 适配器 (Adapter) 是一个可以同时与客户端和服务交互的类: 它在实现客户端接口的同时封装了服务对象。 适配器接受客户端通过适配器接口发起的调用, 并将其转换为适用于被封装服务对象的调用。

  5. 客户端代码只需通过接口与适配器交互即可, 无需与具体的适配器类耦合。 因此, 你可以向程序中添加新类型的适配器而无需修改已有代码。 这在服务类的接口被更改或替换时很有用: 你无需修改客户端代码就可以创建新的适配器类。

理解体会

适配器模式不管是在计算机软件领域,还是在我们的生活中都是随处可见的,为了不修改原有的接口而通过增加一个适配器的方式来兼容新的接口。

这个设计模式的关键在于 Adapter 类,先对新接口的对象进行转化后,然后调用原始的接口,并且将这些分装在 Adapter 类中,这些细节对于外界都是隐藏的,所以能够保证,在不影响原始接口的情况下,也能兼容新的系统逻辑。

相关文章