首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
其他好文
> 详细
[OOD] 适配器模式
时间:
2015-04-21 00:25:39
阅读:
146
评论:
0
收藏:
0
[点我收藏+]
标签:
设计模式
适配器
adapter pattern
背景
世界上电源插头标准很多, 这里只说国标和英标:
中国标准:
英国标准:
各地插头标准不同带来的另一个问题是各地的标准插座主要针对当地插头设计。 常在世界各地跑的朋友都知道一定要配个转接头, 比如这个:
这个转换头名称是World Travel
Adapter
, 所起的作用就是适配。(严格来说,上面的转接头还应用了工作方法。)
*另一种形式是由插座提供适配,作用是一样的。
在软件领域里,我们也常常需要对接两种不同的接口。在设计上有两种模式可以参考。下面以文件操作适配到数据库操作的适配器为例。
1. 多重继承
这样在Adapter里CreateDB()的处理就是调用FileAPI::Open();
2. 组合模式
这时Adapter::CreateDB()实现就是adaptee_->Open();
讨论
适配器模式常常与桥接模式相比较,两者最大的不同在于解决的问题不同。适配器用于对接两个不同的接口,而桥接则主要为了隔离变化。从应用上来说,一个是被动的,一个是主动的。 所谓被动的,就是当前的接口的差异是无法轻易改变的,必须引入一个中间层来解决。而中间层的引入往往带有性能、以及不必要的数据拷贝等开销,详细参考
关于层的反模式讨论
。
如果接口是可控,就要尽量避免接口不一致的情形。而不是等待使用Adapter来处理。
[OOD] 适配器模式
标签:
设计模式
适配器
adapter pattern
原文地址:http://blog.csdn.net/horkychen/article/details/45158187
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
分布式事务
2021-07-29
OpenStack云平台命令行登录账户
2021-07-29
getLastRowNum()与getLastCellNum()/getPhysicalNumberOfRows()与getPhysicalNumberOfCells()
2021-07-29
【K8s概念】CSI 卷克隆
2021-07-29
vue3.0使用ant-design-vue进行按需加载原来这么简单
2021-07-29
stack栈
2021-07-29
抽奖动画 - 大转盘抽奖
2021-07-29
PPT写作技巧
2021-07-29
003-核心技术-IO模型-NIO-基于NIO群聊示例
2021-07-29
Bootstrap组件2
2021-07-29
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!