拉模型和推模型到底在什么情况下使用

来源:3-2 实现的两种方式:推模型和拉模型

zhangxiaobin

2015-09-08 22:27

我感觉老师前面介绍的两种思路和后面代码演示是讲解的有矛盾。

比如:推模型是不管观察者需不需要,一股脑的把所有或部分信息推送给观察者;拉模型是观察者按需从被观察者里面获取信息。

但是,老师在随后的代码演示中,把这两种解释反过来了。我感觉有点糊涂,老师给解答一下

写回答 关注

4回答

  • 不知谁占用了本大人的名字
    2016-03-03 00:03:57
    已采纳

    你这是好久以前问的了,不知道你还在不在了,这样说,我给你重新大概一下,推模型是传递我想传的东西,所以在视频中,我们传递的是String类型,而不是我们整个类,但是这样子因为是定好的,局限比较大,拉模型呢,就是倒过来,我们把自己(目标)传过去,由观察者自己选择,都传过来了,自然适用范围就比较大(毕竟需要的东西都在了),,当然我这样说,我也是才看,有些不足,多看一下,自己多写几遍应该就明白了

    zhangx...

    非常感谢!

    2017-01-14 18:42:00

    共 1 条回复 >

  • leowei
    2016-10-27 23:36:28

    推模型,好像每个观察者得到的消息都是一样的!

    拉模型,根据观察者自身的需求,获取所需的数据! 

  • gao634209276
    2016-04-01 09:56:01

    推模式:开门,送快递

    拉模型:你的快递到了,自己来取

  • 太阳雨下
    2016-01-12 20:45:50

    推模型:是在Subject明确观察者Observer需要什么样的信息时,直接将其所需信息推送给观察者;

    拉模型:是Subject不清楚Observer需要什么信息,直接把自己(想要我的财宝吗?想要的话拿去吧!)给了观察者Observer,想要什么信息自己去通过Subject的引用获取。

    老师的讲解我没太注意,关键在于自己理解了,是吧。

观察者模式

解决发布/订阅问题的观察者模式,以及何时使用观察者模式

55290 学习 · 36 问题

查看课程

相似问题