1. RxJava2 : 什么是观察者模式

1. RxJava2 : 什么是观察者模式
2. RxJava2 : 创建操作符(无关时间)
3. Rxjava2 : 创建操作符(有关时间)
4. Rxjava2 : 变换操作符
5. Rxjava2 : 判断操作符
6. Rxjava2 : 筛选操作符
7. Rxjava2 : 合并操作符
8. Rxjava2 : do操作符
9. Rxjava2 : error处理
10. Rxjava2 : 重试
11. Rxjava2 : 线程切换

观察者模式:

Observable - > 被观察者(也可以称为发布者 用作事件的发起 名词)
Observer - > 观察者(用作事件的接收 名词)
Subscribe - > 订阅(用于连接被观察者和观察者 动词) 
Element -> 元素(也可以称之为事件 名词)

传统的观察者模式(伪代码)

  1. 订阅 : 被观察者,通过订阅的方式,采集所有的观察者(即加入到mObservers集合当中)
  2. 观察 : 当有元素变化的时候,调用setData(Element element),遍历集合,调用每一个加入到集合中的观察者(注册过的)的upData(Element element),从而做到被观察者变化,每一个注册过的观察者均会感知
  3. 元素 : Element 封装需要感知状态的对象
  4. 模型 : (EventBus模型)
    一个Observable作为发起(发布者)
    -> 可以注册(订阅)一个或多个Observer(订阅者)
    -> 发布者元素变化
    -> 订阅者接收到元素变化
public class MyObservable {
    private List mObservers = new ArrayList();
    
    private void subscribe(MyObserve observe){
        mObservers.add(observe);
    }

    private void unsubscribe(MyObserve observe){
        mObservers.remove(observe);
    }

    private void setData(MyElement element){
        for (MyObserve observer : mObservers) {
            observer.upData(element);
        }
    }
}
public class MyObserve {
    public void upData(MyElement element){

    }
}

rxjava中的观察者模式

  1. 一般情况: 观察者和被观察者都是一一对应的:即一个Observable对应一个Observer
  2. 在使用各种操作符的过程当中,我们操作的一个一个的元素
  3. 模型:
    一个Observable发起(可能具有一个或多个元素,一般称之为上游)
    -> 之后均被称之为下游
    -> 操作符使元素产生变化
    -> 一个Observer作为接收变化之后的元素

你可能感兴趣的:(1. RxJava2 : 什么是观察者模式)