RxJava: Design Patterns for Android Developers

RxJava: Design Patterns for Android Developers
RxJava: Design Patterns for Android Developers
English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 2h 24m | 571 MB

The RxJava library—a Java virtual machine (VM) implementation of Reactive Extensions—extends the observer pattern, making it easier for Android developers to program apps that respond to user events and data changes. In this project-based course, instructor Jon Bott helps to familiarize developers with key aspects of RxJava as he goes over some simple design patterns that work with reactive programming. Learn about traits, observables, threading, and more—as well as how to add RxJava to a layered architecture such as Model-View-Presenter (MVP) or Model-View-ViewModel (MVVM). Plus, review real-world use cases that can help you gain a practical understanding of these concepts.

Topics include:

  • What is RxJava?
  • Observables
  • Shortcuts for creating observables
  • Subjects
  • Traits
  • Grouping API service calls
  • Binding
  • Threading and UI controls
Table of Contents

Introduction
1 Welcome
2 What you should know
3 The project we ll be building
4 Set up our starter project

The Basics
5 What is RxJava
6 Observables
7 Observable types
8 BehaviorRelay – Imperative
9 BehaviorRelay – Declarative
10 Subjects
11 Creating an onError method
12 Creating an onComplete method
13 Creating a simple observable
14 Shortcuts for creating observables
15 Traits

Simple UI Example
16 Overview
17 JSONPlaceholder
18 Simple networking
19 Rx single creation
20 Rx single subscription

The Model Layer
21 MVP and MVVM – Architecture with Rx
22 Model layer
23 Database – From model layer to UI
24 Database – Showing our result
25 Network layer overview
26 Network – Network layer
27 Network – From model layer to UI
28 Network – Showing our results
29 Network – Using a more reactive way

Grouping API Service Calls
30 Overview and task creation
31 Wrap task in observable
32 Observable zip
33 Showing our results
34 Handling null values
35 Handling exceptions
36 Failure result type

Binding to the UI
37 Prepare reactive presenter
38 Simple binding
39 Simple list binding
40 RxBinding TextView
41 RecyclerView – Binding setup
42 RecyclerView – Seeing it in action
43 Sectioned data source setup
44 Sectioned data source in action

Threading
45 Threading and UI controls
46 observeOn vs. subscribeOn gotcha

Conclusion
47 Next steps