您当前的位置: 首页 > 

知其黑、受其白

暂无认证

  • 0浏览

    0关注

    1250博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

观察者模式 vs 发布订阅模式

知其黑、受其白 发布时间:2021-08-25 11:56:22 ,浏览量:0

目录
  • 场景
    • 观察者模式
    • 发布订阅模式
    • 总结

场景

有一回面试,面试官问:

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

我脑海中立刻闪现了《设计模式》里讲的:

Publishers + Subscribers = Observer Pattern

“它们是一样的。”,我故作镇定,嘴角露出一丝微笑,仿佛下一秒钟面试官就会给我发offer。

面试官也笑了,“不,它们不一样”。

然后我就:

So, 为什么我错了?观察者模式(Observer pattern),和发布订阅模式(Publish–subscribe pattern),到底有什么不同?

观察者模式

所谓观察者模式,其实就是为了实现松耦合(loosely coupled)。

用《设计模式》里的气象站为例子,每当气象测量数据有更新,changed()方法就会被调用,于是我们可以在changed()方法里面,更新气象仪器上的数据,比如温度、气压等等。

但是这样写有个问题,就是如果以后我们想在changed()方法被调用时,更新更多的信

关注
打赏
1665558895
查看更多评论
立即登录/注册

微信扫码登录

0.0413s