Adapter 适配器模式(设计模式03)

  • 时间:
  • 浏览:4
  • 来源:5分6合APP下载_5分6合APP官方

3、实现-Adapter

2、本杰.NET 张波的PPT资料

2..NET中的另外一另2个 适配器模式的应用就说 DataAdapter。

类适配器和对象适配器可不能否根据具体实际状态来挑选,但一般状态建议使用对象适配器模式

COM Interop就好像是COM和.NET之间的一座桥梁(关于COM互操作更多内容可不能否参考我的互操作系列)。COM组件对象与.NET类对象是删剪不同的,但为了使.NET应用线程

象使用.NET对象一样使用COM组件,微软在除理法律最好的办法上采用了Adapter模式,对COM对象进行包装,你你这名 包装类就说 RCW(Runtime Callable Wrapper)。RCW实际上是runtime生成的一另2个 .NET类,它包装了COM组件的法律最好的办法,并内内外部实现对COM组件的调用。如下图所示:

.NET不支持多重继承,怎么让当Target是一另2个 类,而都不 一另2个 接口时无法实现类适配器,这需要要使用对象适配器。

Adapter模式五种要求朋友尽之后地使用“面向接口的编程”风格,原先不可不能否在后期很方便地适配。

Adapter模式主要应用于“希望复用有些现存的类,怎么让接口又与复用环境要求不一致的状态” ,在遗留代码复用、类库迁移等方面非常有用。

通过类的继承之后对象的组合转换已有的接口为目标接口

Target:标准电源

Adaptee:美国电源

Adapter:适配器

在国内使用的电源供电电压为220V,美国为380V,当你出差到美国,你的电器需要220V的电压,但旅馆里不提供220V,只提供380,就说 ,你到市场买了一另2个 电源适配器,在接上适配器后,旅馆里的电源就可不能否使用在你的电器上了。

2、实现-Adaptee

希望创建一另2个 可不能否复用的类,该类可不能否与有些不相关的类之后是将来不可预见的类协同工作。

Adapter模式可不能否实现的非常灵活,无须拘泥于Gof23中定义的五种价值形式。相似,删剪可不能否将Adapter模式中的“现存对象”作为新的接口法律最好的办法参数,来达到适配的目的。

1、实现-Target

适配器模式重在转换接口,它我过多 可不能否使原先只有在一同工作的一另2个 类一同工作,就说 无缘无故 用在类库复用,代码迁移等方面,有五种亡羊补牢的味道

类适配器通过多继承对一另2个 接口与原先接口进行匹配。

Target定义了Client使用的与特定领域相关的接口,Client通过调用Target实现某一另2个 特定的操作。Adaptee是一另2个 之后处于的类,需要与Target协同工作,你你这名 接口需要适配。Adapter适配器适配Adaptee和Target接口。在类适配器中,通过继承获得Adaptee中的法律最好的办法。

需要使用一另2个 之后处于的类,但接口与设计要求不符。

GoF 23 定义了五种Adapter模式的实现价值形式:对象适配器和类适配器。但类适配器采用“多继承”的实现法律最好的办法,带来了不良的高耦合,就说 一般不推荐使用。对象适配器采用“对象组合”的法律最好的办法,更符合松耦合精神。

将一另2个 类的接口转再加客户希望的原先接口。Adapter模式使得原先之后接口不兼容而只有一同工作的有有哪些类可不能否一同工作。

——《设计模式》GoF

4、实现-使用

ADO.NET为统一的数据访大问题供了多个接口和基类,其中最重要的接口之一是IdataAdapter。DataAdpter起到了数据库到DataSet桥接器的作用,使应用应用线程的数据操作统一到DataSet上,而与具体的数据库类型无关。甚至可不能否针对特殊的数据源编制被委托人的DataAdpter,从而使朋友的应用应用线程与有有哪些特殊的数据源相兼容。

对象适配器采用对象组合,通过引用一另2个 类与原先类接口 在对象适配器中通过组合获得Adaptee对象 通过调用Adaptee对象的法律最好的办法,转换后返回Target结果。

1.适配器模式在.NET Framework中的一另2个 最大的应用就说 COM Interop。

源码下载:http://download.csdn.net/detail/xunzaosiyecao/9543274

小注:

本文每段资料架构设计 自网络,在此表示感谢。

1、 C#设计模式(7)——适配器模式(Adapter Pattern)

猜你喜欢

1500左右性价比高的手机?

扫描二维码下载下载百度知道APP,抢鲜体验如需了解三星目前较为热门的机型及预上市的机型,建议登陆三星官网进行查询参考。为你推荐:换一换 我来答展开全版三星产品使用咨询服务支

2020-03-22

2018年配置高手机呢?

展开详细1.凝时拍摄:超高速传感器以惊人的每秒9300帧捕获瞬间,让精彩不再转瞬即逝。如需了解三星产品的详细机型信息,请登陆官网-点击右上角放大镜图标输入型号查询。4.Bixb

2020-03-22

干技术干累了,拿教师资格证出去玩一圈,打折大全

28.泉州清源山:教师凭教师证,门票五折优惠。(原价:55元/人)终年有效~ 21.平遥古城:半票:教师(教师资格证)100元。终年有效~ 10.龙门石窟:教师凭有效教师资格证

2020-03-22

《嵌入式Linux软硬件开发详解——基于S5PV210处理器》——2.2 DDR2 SDRAM芯片

K4T1G084QQ采用的是FBGA球形封装,不同于普通的贴片封装。K4T1G084QQ的引脚分布及封装示意图如图2-5、图2-6所示。如图2-4所示,SDRAM组织组织结构是

2020-03-22

Identity Service

1、右键项目-发布,把项目编译发布到某个文件夹中。从目录行态可不须要看出它是一套MVC架构的网站,你们都都都可不须要单独进行运行和调试,当然,你们都都都也可不须要把它插进一些人

2020-03-22