有一个需求是这样,一个地方改变,其他地方需要同步,我们该怎么样实现呢?
如果对观察者设计模式有了解的话,我们就知道,我们是可以使用观察者数据模式来实现的;但是这样真的适合吗?除了观察者设计模式,我们是否还能使用其他方式来实现吗?
- 下面一个具体的场景:
手机端一个新闻的app,当服务器数据发生改变的时候,手机端需要同步的话,这里我们使用观察者设计模式,这样的话,就会出现一个问题,即使用户不想接收这个新闻,也是不行的,当然我们一般不会这样去干,我们一般的逻辑就是下拉刷新,不去响应服务器的变化,而是主动请求同步,这就是交互式;
相反:
每当服务器发生变化的时候,手机端立马能够同步,这就是响应式;最常见的就是接口的回掉与观察者设计模式;
当然,不管是响应式,还是交互式,都是能够同步服务器的数据;我们是完全可以用交互式去模拟实现响应式(死循环去访问服务器),但是响应式却不能去模拟交互式的。
一般情况,他们是使用在不同的场景的,但是也可以同时去适应某一种场景;
比如说聊天软件的消息,我们认为既可以使用响应式也是可以交互式来实现;
一般来说,适应响应式的场景,一般都是能够使用响应式来实现的,
我们都是不会用交互式去实现;但是场景一般适应交互式的, 我们就只能用交互式去实现;