一个例子了解什么是桥接模式

1,426 阅读1分钟

20190807235005.png

⭐️ 更多前端技术和知识点,搜索订阅号 JS 菌 订阅

桥接模式实际上就是将逻辑抽象和具体的实现分离。

以追加字符串到文件中为例

代码从

function appendTextToFile(filePath, textToAppend, callback) {
    let f = fs.readFileSync(filePath).toString()
    f += textToAppend
    callback(f)
}

变为:

// let f = fs.readFileSync(filePath).toString()

function appendTextToFile(file, textToAppend, callback) {
    let f = file.toString()
    f += textToAppend
    callback(f)
}

上面代码是读取某个文件并在文件中追加字符串,最后调用回调函数。

桥接模式的主要特点就是实现层(这里的文本追加逻辑)和抽象层(这里的文件和文本)的抽离

这里就不管你 file 是从何而来的,它规定 file 这个参数必须有一个 toString 方法能够获取到 file 文件的内容,由此 file 就被抽象出去了

其中 file 文件、textToAppend 文本字符串都从外部获取而来,不管是什么内容的文件还是什么内容的字符串都可通过这个方法将后者追加到文件中去。

JS 菌公众账号

请关注我的订阅号,不定期推送有关 JS 的技术文章,只谈技术不谈八卦 😊