javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > JS桥接模式

详解JS设计模式之桥接模式用法

作者:慕仲卿

javascript桥接桥接设计模式(Bridge Pattern)是一种结构型设计模式,它用于将抽象部分与其具体实现部分分离,使它们可以独立地变化,本文将通过代码示例详解的给大家介绍一下JS桥接模式,需要的朋友可以参考下

定义

桥接设计模式(Bridge Pattern)是一种结构型设计模式,它用于将抽象部分与其具体实现部分分离,使它们可以独立地变化。

组成

在桥接模式中,有两个关键角色:

代码

// 实现部分 - 具体实现A 
class DomElementHandler { 
    constructor(elementId) { 
        this.elementId = elementId; 
    } 
    setText(text) { 
        const element = document.getElementById(this.elementId); 
        element.textContent = text; 
    } 
} 
// 抽象部分 - 桥接类 
class DomBridge { 
    constructor(handler) { 
        this.handler = handler; 
    } 
    /* 错误的写法
    constructor(){
        this.handler = new DomElementHandler("myElement");
    }
    */
    setText(text) { 
        this.handler.setText(text); 
    } 
} 
// 示例用法 
const domHandler = new DomElementHandler("myElement"); 
// 创建具体实现A对象 
const domBridge = new DomBridge(domHandler); 
// 使用具体实现A创建桥接对象 
domBridge.setText("Hello, Bridge Pattern!"); 

符合DIP原则

依赖倒置原则:依赖倒置原则是面向对象设计中的一个重要原则,它主张高层模块不应该依赖于低层模块,两者都应该依赖于抽象。也就是说,【抽象不应该依赖于具体实现细节,具体实现细节应该依赖于抽象】。

桥接模式通过引入一个桥接接口或抽象类来实现依赖倒置原则。

抽象部分和实现部分之间通过组合关系进行关联。这样,抽象部分不依赖于具体实现类,而是依赖于抽象接口或抽象类,从而实现了依赖倒置。

对比策略模式

使用场景

原生js中没有直接对此模式的使用,但是在UI库开发,动画,主题,获取数据源的业务场景中用得较多。

总结

桥接模式解决的是:统一提调来自不同类的实例对象上的同名方法的问题。

到此这篇关于详解JS设计模式之桥接模式用法的文章就介绍到这了,更多相关JS桥接模式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文