15、适配器模式与装饰器模式详解

适配器模式与装饰器模式详解

1. 适配器模式概述

适配器模式允许将现有接口适配到原本不兼容的类上。使用该模式的对象也可称为包装器,因为它们会用新接口包装另一个对象。在许多情况下,创建适配器对程序员和接口设计者都有益。例如,在设计类时,某些接口可能无法与现有 API 一起使用,而适配器能让我们在不直接修改这些类的情况下使用它们。

1.1 适配器的特点

  • 协调接口 :适配器用于协调两个不同的接口。如果现有代码的接口运行良好,可能就不需要适配器;但如果接口不直观或不实用,就可以使用适配器提供更简洁或选项更丰富的接口。
  • 与外观模式的区别 :表面上,适配器模式与外观模式非常相似,它们都会包装另一个对象并改变其对外呈现的接口。但区别在于接口的改变方式。外观模式提供简化的接口,不包含额外选项,有时会做一些假设以简化常见任务;而适配器则是将一个接口转换为另一个接口,不会移除任何功能或简化接口。当客户端期望的 API 不可用时,就需要使用适配器。

1.2 适配器的实现示例

适配器可以实现为不兼容方法调用之间的一层薄代码。例如,有一个函数需要三个字符串作为参数,但客户端持有一个包含三个字符串元素的数组,这时就可以使用适配器让两者一起工作。

var clientObject = {
    string1: 'foo',
    string2: 'bar',
    string3: 'baz'
};
function interfaceM
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值