Android Rxjava:圖解不同的詮釋

1.前言

  • Rxjava, 具備鏈式調用、使用簡單&事件與結果鬆耦合的特色。java

  • Rxjava, 之因此深受歡迎它包含 很是多操做符,能經過 【鏈式形】 優雅整潔的代碼幾乎能實現全部的功能需求面試

  • 本文特色:圖多字少邏輯簡單框架

  • 以前面試中被問了不少Rxjava的知識,今天獻一份不同詮釋,但願你們喜歡。ide

2.目錄

3.簡介

4.原理淺析

  • Rxjava,擴展自觀察者模式

4.1 生活例子

  • 經過手機叫外賣例子,分析一下rxjava的原理。學習

  • 叫外賣流程spa

  • 涉及的角色與對應流程

4.2 例子結合Rxjava

  • Rxjava,包含觀察者、被觀察者、訂閱行爲&事件,與例子對應以下圖:
  • 對應Rxjava基本使用代碼:
public void create(){
      Observable.create(new ObservableOnSubscribe<String>() {
          @Override
          public void subscribe(ObservableEmitter<String> e) throws Exception {
              e.onNext("烤雞一份");
              e.onNext("薯條一份");
              e.onNext("可樂一杯");
// e.onError(new NullPointerException());
              e.onComplete();
          }
      }).subscribe(new Observer<String>() {
          @Override
          public void onSubscribe(Disposable d) {
              Log.e(TAG,"onSubscribe : 訂閱成功");
          }

          @Override
          public void onNext(String s) {
              Log.e(TAG,"onNext : 接收事件 "+s);
              //按順序獲得:烤雞一份、薯條一份、可樂一杯
          }

          @Override
          public void onError(Throwable e) {
              Log.e(TAG,"onError : 事件異常 "+e.toString());
          }

          @Override
          public void onComplete() {
              Log.e(TAG,"onComplete : 事件執行完畢 ");
          }
      });
  }
複製代碼

總結:
被觀察者(Observable):經過訂閱行爲(subscribe())把事件按順序發送到 觀察者(Observer)。 觀察者(Observer):按順序接收到事件&作出響應反饋。設計

5.操做符

5.1建立操做符

  • 做用 :被觀察者把事件發送至觀察者。3d

  • 應用 :code

5.2變換操做符

  • 做用 :被觀察者把序列事件加工爲其餘序列事件(變換)。orm

  • 原理 :結合叫外賣的例子(更改菜式)。

  • 應用 :

5.3合拼操做符

  • 做用 :將多個被觀察組合 & 將它們須要發送的事件合拼

  • 應用 :

5.4過濾操做符

  • 做用 :過濾/篩選 被觀察者發送的事件。

  • 應用 :

5.5條件操做符

  • 做用 :經過指定條件,判斷是否接收被觀察者發送的事件。

  • 應用 :

5.6其餘功能操做符

  • 做用 :被觀察者發送事件時,進行功能性拓展

  • 應用 :

6.框架設計思想

7.總結

  • Rxjava 如此好用、簡單、優雅的鏈式任務框架庫,你還等什麼?

  • 到此,基本完成了rxjava相關介紹與使用,但願你們喜歡個人文章。

  • 但願該文章能幫助準備面試、準備使用Rxjava的兄die們。

寫技術文章初心

  • 技術知識積累

  • 技術知識鞏固

  • 技術知識分享

  • 技術知識交流




+qq羣457848807:。獲取以上高清技術思惟圖,以及相關技術的免費視頻學習資料

相關文章
相關標籤/搜索