文章目录
二者有类似的地方,也有区别。
引用的文章说的已经比较清楚了,这里只列出对比图。
对比点 | 观察者模式 | 发布订阅模式 |
---|---|---|
中间人角色 | 无事件中心,观察者直接订阅目标 | 有事件中心,发布者与订阅者通过事件中心通信 |
关系类型 | 一对多 | 多对多 |
灵活性 | 较低,观察者依赖于目标 | 高,发布者和订阅者完全解耦 |
典型应用 | 响应式数据、DOM事件监听 | 跨组件通信、模块解耦 |
二者有类似的地方,也有区别。
引用的文章说的已经比较清楚了,这里只列出对比图。
对比点 | 观察者模式 | 发布订阅模式 |
---|---|---|
中间人角色 | 无事件中心,观察者直接订阅目标 | 有事件中心,发布者与订阅者通过事件中心通信 |
关系类型 | 一对多 | 多对多 |
灵活性 | 较低,观察者依赖于目标 | 高,发布者和订阅者完全解耦 |
典型应用 | 响应式数据、DOM事件监听 | 跨组件通信、模块解耦 |