美文网首页
设计模式之适配器模式

设计模式之适配器模式

作者: jia林 | 来源:发表于2023-02-28 22:32 被阅读0次

适配器模式:可以用来在现有接口和不兼容的类之间进行适配。主要功能是进行转换匹配,目的是复用已有的功能,而不是来实现新的接口

实际中的应用

  • jQuery.ajax 适配 Axios
    有的使用 jQuery 的老项目使用 ajax 来发送请求,现在的新项目一般使用 Axios,那么现在有个老项目的代码中全是 ajax,如果你挨个修改,那么 bug 可能就跟地鼠一样到处冒出来让你焦头烂额,这时可以采用适配器模式来将老的使用形式适配到新的技术栈上:

实现的方法:

/* 适配器 */
function newAjax(options) {
    return axios({
        url: options.url,
        method: options.type,
        responseType: options.dataType,
        data: options.data
    })
      .then(options.success)
      .catch(options.error)
}

/* 经过适配器包装 */
ajax = function(options) {
    return newAjax(options)
}

ajax({
    url: '/demo-url',
    type: 'POST',
    dataType: 'json',
    data: {
        name: '张三',
        id: '2345'
    },
    success: function(data) {
        console.log('访问成功!')
    },
    error: function(err) {
        console.err('访问失败~')
    }
})

适配器模式的优缺点

  • 优点
    1.复用性好,使原有逻辑得到更好的复用,有助于避免大规模改写现有代码
    2.可扩展性良好
    3.灵活性好,适配器并没有影响原有功能,不想使用,直接删除即可

  • 缺点
    可阅读性不太友好,会让系统变得零乱,明明调用 A,却被适配到了 B

相关文章

  • 简说设计模式之适配器模式

    前言:对于设计模式基础概念可以去看[简说设计模式之设计模式概述] 一、什么是适配器模式 适配器模式(Adapter...

  • 设计模式 - 目录

    设计模式01 - 单例模式 设计模式02 - 工厂模式 设计模式03 - 建造者模式 设计模式04 - 适配器模式...

  • 设计模式详解——适配器模式

    本篇文章介绍一种设计模式——命令模式。本篇文章内容参考《JAVA与模式》之适配器模式,Android设计模式源码解...

  • 设计模式之适配器模式

    设计模式之适配器模式 1. 模式定义 适配器模式又称包装器模式,属于结构型模式,它可以将一个接口转换成客户希望的另...

  • 最常用的设计模式---适配器模式(C++实现)

    适配器模式属于结构型的设计模式,它是结构型设计模式之首(用的最多的结构型设计模式)。 适配器设计模式也并不复杂,适...

  • iOS设计模式(5)策略模式

    设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(2)工厂模式》《iOS设计模式(3)适配器...

  • iOS设计模式(6)模板模式

    设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(2)工厂模式》《iOS设计模式(3)适配器...

  • iOS设计模式(7)建造者模式

    设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(2)工厂模式》《iOS设计模式(3)适配器...

  • iOS设计模式(4)抽象工厂模式

    设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(2)工厂模式》《iOS设计模式(3)适配器...

  • iOS设计模式(1)简单工厂模式

    设计模式系列文章 《iOS设计模式(2)工厂模式》《iOS设计模式(3)适配器模式》《iOS设计模式(4)抽象工厂...

网友评论

      本文标题:设计模式之适配器模式

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