zoukankan      html  css  js  c++  java
  • 介绍下观察者模式和订阅-发布模式的区别,各自适用于什么场景

    观察者模式中主体和观察者是互相感知的,发布-订阅模式是借助第三方来实现调度的,发布者和订阅者之间互不感知

    联系

    发布-订阅模式是观察者模式的一种变体。发布-订阅只是把一部分功能抽象成一个独立的ChangeManager。

    意图

    都是某个对象(subject, publisher)改变,使依赖于它的多个对象(observers, subscribers)得到通知。

    区别与适用场景

    总的来说,发布-订阅模式适合更复杂的场景。

    在「一对多」的场景下,发布者的某次更新只想通知它的部分订阅者?

    在「多对一」或者「多对多」场景下。一个订阅者依赖于多个发布者,某个发布者更新后是否需要通知订阅者?还是等所有发布者都更新完毕再通知订阅者?

    这些逻辑都可以放到ChangeManager里。

    参考文章:https://juejin.im/post/5a14e9edf265da4312808d86

    https://juejin.im/post/5cd81a20e51d453b4558d858

    好记性不如烂笔头,看到自己觉得应该记录的知识点,结合自己的理解进行记录,用于以后回顾。
  • 相关阅读:
    开发日记1
    探索需求2
    探索需求1
    周总结8
    周总结7
    周总结6
    周总结5
    周总结4
    周总结3
    周总结2
  • 原文地址:https://www.cnblogs.com/wangxi01/p/11207504.html
Copyright © 2011-2022 走看看