定义
- 将一个原始接口转换成客户端需要的接口
- 原始接口不兼容现在新的接口,将他们两个可以一起工作,一起工作需要Adapter实现;
应用场景
- 接口不兼容
- 可以重复使用的类,用于与一些彼此没有太大关系的类一起工作
- 统一输出接口,输入端类型无法确定
角色划分(三个角色)
- 角色一:被适配者(Adaptee)
- 角色二:目标接口(Target)
- 角色三:适配器 (Adapter)
角色之间的管理
类适配器
- 适配器实现目标接口的协议;
- 适配器继承被适配者
对象适配器
- 适配器实现目标接口的协议;
- 适配器持有被适配者的引用。
原始案例
UITableView实现优化
UITableView的dataSource和delegate就是使用的就是适配器模式
;
- dataSource和delegate就是目标接口;
- 展示的数据就是被适配者。
- 而适配器一般就是我们的viewController,为了优化viewController,我们应该把适配器独立出来;
demo
网友评论