《JS设计模式》笔记-桥接模式

桥接模式:将抽象部分与它的实现部分分离,使它们都可以独立地变化

比如要创建一个多种形状多种颜色的图像,我们可以提取出抽象部分

// 颜色部分
function Color(cl) {
    this.color = cl
}
Color.prototype.draw = function () {
    console.log('绘制颜色')
}

// 形状部分
function Shape(sp) {
    this.shape = sp
}
Shape.prototype.createShape = function () {
    console.log('创建形状')
}



function Ball() {
    this.color = new Color('red')
    this.shape = new Shape('react')
}

var ball = new Ball()

总结:

优点:抽象部分和实现部分分离,有利于 分层和扩展,高度解耦,利于维护

缺点:大量的类导致开发成本增加,性能也会收到影响

对比 建造者模式

相似的都是将不同功能拆分开,达到构建与表象分离,最后拼接使用。

区别是 桥接模式 偏重于抽象不同的模式,提炼成不同维度的类。 建造者模式 偏重于将不同维度的类拼接在一起,得到不同的构建对象

参考 JS 桥接模式

参考 js设计模式(3)---桥接模式

随机浏览