Adapter模式

1.定义:将一个类的接口转换成希望的另一个接口。使原来由于接口不兼容而不能一起工作的类可以一起工作。

2.补充:通常用于需要的类必须从抽象类派生,但现有的类不是;

              Adapter模式最终提供了具有所需接口的包装类;

              Adapter模式最常见的用途就是保持多态性

 

3.实现:将原有类包含在另一个类中,让包含类与需要的接口匹配,调用被包含类的方法。

               原有类中没有实现的方法也可以在包含类中实现。

4.两种适配方法:对象Adapter模式:使用包含,可以适配被包含类及其子类;

                            类Adapter模式    :多重继承,除了c++,很多语言都不支持多重继承。

5.Adapter模式与Facade模式比较:

   共同点:都是用对象将遗留系统包装起来,使其更容易使用;

                 都存在已有的类;

   不同点:Adapter模式必须按某个接口设计,Facade模式的动机是越简单越好

                 Adapter模式可能需要保持多态行为,Facade模式不需要

   结论:Facade模式简化了接口,而Adapter模式则将一个已有的接口转化为另一个。


6.使用适配模式一般在开发后期或维护期。有点无奈,有点亡羊补牢的感觉。

   在设计阶段或开发初期,应该有统一的规范,如果有可修改的功能相同的不同接口已存在,则应该首先考虑通过重构统一接口。

   对一些第三方组件可以直接考虑使用适配模式统一接口。第一方是自己,第二方是系统。


7..Net中的DataAdapter,适配了不同的数据源,得到了统一的DataSet,即xml格式数据。使的不用关心数据库的数据细节。  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值