Skip to content

观察者模式和发布订阅模式分别是什么?有什么区别?

Posted on:2024年1月25日 at 19:10

观察者模式:一个对象(观察者)订阅另一个对象(主题),当主题被激活的时候,触发观察者里面的事件。

image.png

发布订阅模式:订阅者把自己想要订阅的事件注册到调度中心,当发布者发布事件到调度中心(就是该事件被触发),再由调度中心统一调度订阅者注册到调度中心的处理代码。

image.png

对比一下:

image.png

可以发现两种模式下的角色数量不一样:

从使用场景上:

原文转自:https://fe.ecool.fun/topic/43972778-bd1d-4ff4-a153-6c6df65242e3