适配器模式
目录
定义
适配器模式是一种结构型设计模式,它使接口不兼容的对象能够互相合作。
适配器模式的结构
对象适配器
-
客户端是包含业务逻辑的类
-
客户端接口描述了其他类与客户端代码合作时必须遵循的协议
-
服务中有一些功能类(通常来自第三方遗留系统)。客户端与其不兼容,因此无法直接调用其功能。
-
适配器是一个可以同时和客户端与服务交互的类:它在实现客户端接口的同时封装了服务对象。适配器接受客户端通过适配器接口发起的调用,并将其转化为适用于被封装服务对象的调用。
-
客户端代码只需要通过接口与适配器交互即可,无需和具体的适配器类耦合。意味着可以新类型的适配器而无需修改已有的代码。这在服务类的接口被更改或替换时很有用,你无需修改客户端代码就可以创建新的适配器类
适配器模式的使用场景
当你希望使用某个类,但是其接口与其他代码不兼容时,可以使用适配器类。
适配器模式允许你创建一个中间层类,其可作为代码与遗留类、第三方类或提供怪异接口的类之间的转换器。
适配器模式的优缺点
优点
满足单一职责原则
满足开闭原则
缺点
代码整体负责度增加