书记模式-适配器模式

作者: breezedancer | 来源:发表于2016-10-31 20:43 被阅读475次

    适配器模式是把一个雷的接口转换为另外一种接口,以方便客户端调用。

    这有什么意义呢?打个比方,美国的日用电压是110v,而我们中国是220v,中国的使用老美的电器就需要一个变压器,这个变压器就相当于适配器。

    适配器有两种情况,分别是类的适配器和对象适配器模式,有什么区别呢?

    类适配器

    先看下 UML 类图


    target 是最终需要的接口;
    adaptee 是源适配,也就是需要适配的接口(老美的110v);
    adapter 具体的适配器核心,把源转换成目标

    这里 Adapter 继承 Adaptee,这个模式的缺点是源和源的子类无法都使用该适配器,也就继承的这个类有此功能,这就大大削弱了该模式的威力。下面稍加改造,能量就凸显出来,请看对象适配器模式

    对象适配器模式

    看下 UML 类图



    在适配器里面引入源,这样源的所有方法都可以使用,如果是源的子类也可以传入,妙也。

    什么时候使用这个模式

    1、现有的类的接口不符合需求
    2、用于彼此之间关系不大的类
    3、不太适合对子类做适配器

    模式都不是帮助我们做具体的事,只是属于一种思考问题和解决问题的方法;适配器模式并不是帮助我们做适配器的具体事,而是把源接口对接到目标接口提供一种方法。至于里面是怎么转换,还是得在 Adapter 里面自行实现。

    适配器模式比较简单,不再码砖头做例子,我们日常开发前期开源把接口定好,然后呼啦啦的写代码,一旦接口不匹配,这个时候可以请出这个模式,简直神了。

    相关文章

      网友评论

        本文标题:书记模式-适配器模式

        本文链接:https://www.haomeiwen.com/subject/kybputtx.html