设计模式(二)之观察者模式

时隔一年多之后,我又回来更新这个系列了==。==

这次我们来看一下被广为使用,即使没接触过设计模式同学也一定听说过的,观察者模式

JDK版本:11(Java8的语言特性)

参考书籍:《HEAD FIRST 设计模式》

IDE: IntelliJ IDEA

实例引入

接触过Web前端的同学都知道,DOM API中,可以给事件绑定回调函数 (callback)

1
2
const node = document.createElement("div")
node.onclick = () => console.log("clicked!")

简单解释一下,代码第一行创建一个DOM,第二行给 onclick 设置一个函数,每当触发 click 事件时都会执行该函数【还有个闭包的效果,这里没体现,当然这也不是这篇的重点,不展开讲】。

来看一下点击之后的效果

同理我们还可以给其他事件绑定回调函数

1
node.ondrag = () => console.log("dragged!")

通俗来讲,上述代码做的是类似 trigger 一样的工作:当目标对象发生变化时,我们需要一个函数/方法去对其进行响应。

设计模式之策略模式

设计模式第一站

JDK版本:9(Java8的语言特性)

参考书籍:《HEAD FIRST 设计模式》

IDE: IntelliJ IDEA

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×