适配器模式
在不改变原有接口的情况下,让接口适配
介绍
- 旧接口格式和使用者不兼容
- 中间加一个适配转化接口
示例
- 插头适配
class Adaptee {
specificRequest() {
return '德国标准插头'
}
}
class Target {
constructor() {
this.adaptee = new Adaptee()
}
request() {
let info = this.adaptee.specificRequest()
return `${info} - 转换器 - 中国标准插头`
}
}
//测试
let target = new Target()
let res = target.request()
console.log(res)
结果
- 购物车
UML类图
经典使用场景
-
封装旧接口 ¥$.ajax
-
vue的computed属性
设计原则验证
- 将旧接口和使用者分离
- 符合开放封闭原则