天天看點

RxAndroid和RxJava的資料分享

      最近ReactiveX程式設計模型開始慢慢發展起來了,對于 Android 開發者來說, RxJava 是一個很難上手的庫,因為它對于 Android 開發者來說有太多陌生的概念了,可是它真的很牛。RxAndroid的核心是異步,提供了可維護行好的鍊式文法和各種線程之間的友善切換,對于大多數Android開發者來說,使用RxAndroid寫的代碼初看應該是很迷茫的,但熟悉了流程就好了,RxAndroid對于複雜的異步程式設計場景還是能顯著提高代碼可讀性的,就像javascript 的Promise程式設計模式差不多。

       ReactiveX是Reactive Extensions的縮寫,一般簡寫為Rx。Rx是一個程式設計模型,目标是提供一緻的程式設計接口,幫助開發者更友善的處理異步資料流,Rx庫支援.NET、JavaScript和C++,Rx近幾年越來越流行了,現在已經支援幾乎全部的流行程式設計語言了(已經有13種語言了)。社群網站是 http://reactivex.io/。       RxAndroid是在RxJava基礎上增加了一些類,讓我們可以在Android平台上使用RxJava。Retrofit(REST網絡庫),RxBinding,RxBus等開源項目可以和RxAndroid一起使用。

下面是網友收集的一些相關的文章

Blog

  • 給 Android 開發者的 RxJava 詳解 -強烈推薦 扔物線的文章 講解非常詳細,這篇看懂基本就可以上手了a啊
  • NotRxJava懶人專用指南 -這篇入門極力推薦,手把手,深入淺出教你實作一個簡易的RxJava庫,更好的了解RxJava的實作思路
  • 深入淺出RxJava(一:基礎篇)
  • 深入淺出RxJava ( 二:操作符 )
  • 深入淺出RxJava ( 三--響應式的好處 )
  • 深入淺出RxJava ( 四-在Android中使用響應式程式設計 )
  • 如何更新到RxAndroid1.0 -适合使用Rx 0.x版本的使用者更新的時候參考

開發者前線翻譯的一系列很贊的教程

  • 那些年我們錯過的響應式程式設計 -非常棒的講解響應式程式設計的文章。
  • 使用RxJava從多個資料源中加載資料
  • 使用RxJava.Observable取代AsyncTask和AsyncTaskLoader
  • 當複仇者聯盟遇上Dragger2、RxJava和Retrofit的巧妙結合
  • 結合RxJava使用SQLite
  • 比鋼鐵俠反應更靈敏-RxJava

一些不錯的介紹操作符的文章

  • 行雲流水的部落格
  • Android RxJava使用介紹(二) RxJava的操作符

一些不錯的翻譯文章

  • 【譯】Deferring Observable code until subscription in RxJava
  • 【譯】RxJava Observable tranformation: concatMap() vs flatMap()
  • 【譯】Loading data from multiple sources with RxJava
  • 【譯】Don't break the chain: use RxJava's compose() operator

Test

  • Unit Testing RxJava Observables and Subscriptions

App

  • android-gfycat -Android application that loads gifs via gfycat for efficiency's sake
  • JakeWharton/u2020 -Jake大神的項目,裡面有RxJava和Retrofit一起使用的例子
  • Avengers - 一個使用Retrofit+RxJava+MVP的app
  • rx-android-architecture -Android中使用Rx的一種架構
  • learnrxjava -RxJava例子

Library

  • rx-preferences -使SharedPreferences支援RxJava
  • RxAndroid -RxJava的Android拓展
  • RxLifecycle -幫助使用了RxJava的安卓應用控制生命周期
  • RxBinding -安卓UI控件的RxJava綁定API
  • storio -支援RxJava的資料庫
  • retrofit -支援RxJava的網絡請求庫

Stackoverflow

When should one use RxJava Observable and when simple Callback on Android?