In this episode of Fragmented, Donn and Kaushik continue their conversation with Dan Lew on RxJava. In the final part of this 2 part series, they talk about many useful RxJava operators and other intricacies of using RxJava in Android.

Download

Show Notes

RxJava Operators:

Observable.just [reactivex.io]

Observable.from [reactivex.io]

Observable.defer [reactivex.io] Using defer to handle “ Old, Slow Code ” [blog.danlew.net]

Observable.map [reactivex.io]

Observable.flatmap [reactivex.io] map vs flatmap (alchemist and cheese shredding analogy [reddit])

Observable.zip [reactivex.io]

Observable.combineLatest [reactivex.io]

Observable. switchMap [reactivex.io]

Observable.distinctUntilChanged [reactivex.io]

Observable.lift explanation [reactivex.io]

Observable.compose Don’t break the chain (using compose) [blog.danlew.net]

Observable.filter [reactivex.io]

Observable.take [reactivex.io]

subscribeOn vs observeOn [stackoverflow.com]

Understanding debounce, buffer, debouncedBuffer [nerds.weddingpartyapp.com]

RxJava Components:

Subjects : when is it appropriate to use [.net but still applies] [[davesexton.com]19]

: when is it appropriate to use [.net but still applies] [[davesexton.com]19] Implementing an event bus using RxJava [nerds.weddingpartyapp.com]

RxJava plugins [github.com] RxJavaDebug plugin – for hooking to start/end/error [github.com]

[github.com] .toBlocking() [reactivx.io]

Composite Subscriptions [reactivex.io]

Retrolambda

Retrolambda library [github.com]

Retrolambda gradle plugin [github.com]

Common Issue with Retrolambda (NoClassDefFoundError) [github.com]

Hot vs Cold observables – From the RxJs wiki [github.com]

uses js instead of java, but concepts are the same and this is the best explanation I’ve found so far.

RxJava wiki on Backpressure [github.com]:

Ring buffer size: `System.setProperty(“rx.ring-buffer.size”, “128”);`

Issue with changing buffer ring size [github.com]

It’s 16 on Android, down from 1024 originally. :P So it’s actually 64x smaller.

Awesome picks:

Dan Lew:

Simple Made Easy (talk by Rich Hickey creator of Clojure) [infohq]

Victor by Trello (SVG assets) [github.com]

Donn:

Realm Object Database [realm.io]

Kaushik:

Therapeutic Refactoring (talk by Katrina Owen) [youtube.com]

Contact

Dan Lew

Donn Felker

Kaushik Gopal