适配模式
什么是适配器模式
将一个类地接口变成客户端所期望地另一种接口,从而使原本因接口不匹配而无法一起工作的两个类能够在一起工作
适配模式作用:
- 接口转换,将原有的接口转换成另一种接口
- 用新的接口包装一个已有的类
- 匹配一个老的组件到一个新的接口
设计思想
适配模式又叫变压器模式,也叫包装模式。
将一个对象经过包装或转换后使它符合指定的接口,使得调用方可以像使用接口的一般对象一样使用它
适配模式通常用于对已有的系统进行新功能拓展,尤其适用于在设计良好的系统框架下接入第三方的接口或第三方的SDK
设计要点
- 目标:你期望的目标接口,要转换成的接口
- 源对象:要被转换的角色,要把谁转换成目标角色
- 适配器:适配模式的核心角色,负责把源对象转换和包装成目标对象
优缺点
优点:
- 可以让两个没有关联的类一起运行,起中间转换的作用
- 提高了类的复用率
- 灵活性好,不回破环原有系统
缺点: - 如果原有系统没有设计好(如目标不是抽象类或接口,而是一个实体类),适配模式很难实现
- 过多地使用适配器,容易使代码结构混乱,如明明看到调用地是A接口,内部调用地却是B接口地实现。
应用场景
- 系统需要使用现有的类,而这些类的接口不符合现有系统的要求
- 对已有的系统拓展新功能,尤其适用于在设计良好的系统框架下增加接入第三方的接口或者第三方的SDK