开发者社区 问答 正文

观察者模式和发布订阅模式有什么不同?

观察者模式和发布订阅模式有什么不同?

展开
收起
请回答1024 2020-04-07 21:01:28 1060 分享 版权
1 条回答
写回答
取消 提交回答
  • 发布订阅模式其实属于广义上的观察者模式

    在观察者模式中,观察者需要直接订阅目标事件。在目标发出内容改变的事件后,直接接收事件并作出响应。

    而在发布订阅模式中,发布者和订阅者之间多了一个调度中心。调度中心一方面从发布者接收事件,另一方面向订阅者发布事件,订阅者需要在调度中心中订阅事件。通过调度中心实现了发布者和订阅者关系的解耦。使用发布订阅者模式更利于我们代码的可维护性。

    2020-04-07 21:01:44
    赞同 展开评论
问答地址: