Shape Shape point chapter-list Shape Shape Copy 12 Shape Shape Copy 3 Shape Shape dropdown editor editor Combined Shape grid Shape Copy 4 Shape Copy 7 Shape language language Shape megaphone paperback Shape platform noun_419259-2 copy play-icon BS-Question-Rounded-Circle quotes noun_610406 stacked-books-1 stacked-books-2
New

Reactive Programming with Kotlin

$49.99 $59.99 5/5 2 reviews · Write a Review
  • Platform Android 9
  • Language Kotlin 1.3
  • Editor AS 3.3

The book that teaches you to use RxJava, RxAndroid and RxKotlin to create complex reactive applications on Android and exercise full control over the library to leverage the full power of reactive programming in your apps.

Note: This book is in Early Access. You’ll get advance access to the book while it’s in development, and you’ll get a free update to the complete digital edition of the book when it’s complete!

Estimated final release date: Fall 2019.

Developer Guide

Intermediate

For Intermediate Developers

Learn Reactive Programming in Kotlin with RxJava!

Not only will you learn how to use RxJava to create complex reactive applications on Android, you'll also see how to solve common application design issues by using RxJava, RxAndroid and RxKotlin. Finally, you'll discover how to exercise full control over the library and leverage the full power of reactive programming in your apps. Specifically, learn to handle asynchronous event sequences via two key concepts in Rx—Observables and Observers. Hone your UI development with RxJava and companion libraries to make it easy to work with the UI of your apps, providing a reactive approach to handling user events. Dig into both intermediate and advanced topics, such as error handling, schedulers, app architecture, repositories, and integrating RxJava with Android Jetpack.

Table of Contents

Section I: Getting Started with RxJava

1.

Hello, RxJava! - New

Learn about the reactive programming paradigm and what RxJava can bring to your app.

2.

Observables - New

Now that you’re ready to use RxJava and have learned some of the basic concepts, it’s time to play around with observables.

3.

Subjects - New

In this chapter, you’re going to learn about the different types of subjects in RxJava, see how to work with each one and why you might choose one over another based on some common use cases.

4.

Observables & Subjects in Practice - New

In this chapter, you’ll use RxJava and your new observable super-powers to create an app that lets users to create nice photo collages — the reactive way.

Section II: Operators & Best Practices

5.

Filtering Operators - New

This chapter will teach you about RxJava’s filtering operators that you can use to apply conditional constraints to “next” events, so that the subscriber only receives the elements it wants to deal with.

6.

Filtering Operators in Practice - New

In the previous chapter, you began your introduction to the functional side of RxJava. In this chapter, you’re going to try using the filtering operators in a real-life app.

7.

Transforming Operators - New

In this chapter, you’re going to learn about one of the most important categories of operators in RxJava: transforming operators.

8.

Transforming Operators in Practice - New

In this chapter, you’ll take an existing app and add RxJava transforming operators as you learn more about map and flatMap, and in which situations you should use them in your code.

9.

Combining Operators - New

This chapter will show you several different ways to assemble sequences, and how to combine the data within each sequence.

10.

Combining Operators in Practice - New

You'll get an opportunity to try some of the most powerful RxJava operators. You'll learn to solve problems similar to those you'll face in your own applications.

11.

Time-Based Operators - New

Managing the time dimension of your sequences is important. To learn about time-based operators, you'll practice with an animated app that visually demonstrates how data flows over time.

Section III: Intermediate RxJava

12.

Error Handling in Practice - New

Even the best RxJava developers can’t avoid encountering errors. You’ll learn how to deal with errors, how to manage error recovery through retries, or just surrender yourself to the universe and letting the errors go.

13.

Intro to Schedulers - Coming Soon

This chapter will cover the beauty behind schedulers, where you’ll learn why the Rx abstraction is so powerful and why working with asynchronous programming is far less less painful than using locks or queues.

14.

Flowables & Back Pressure - Coming Soon

Observables are very powerful, but what happens if a subscriber can't keep up with the next events? You'll see how to handle this situation using Flowables.

15.

Testing RxJava Code - Coming Soon

Testing your code is at the heart of writing good software— RxJava comes with lots of nifty tricks for testing everything under the sun.

16.

Creating Custom Reactive Extensions - Coming Soon

Beyond using the elements made available directly by RxJava, you can also create RxJava wrappers around existing non-Rx frameworks. You'll learn how to create and incorporate such wrappers into your reactive application.

Section IV: RxJava Community Cookbook

17.

RxBinding - Coming Soon

You'll learn how the extremely handy library RxBinding takes care of making reactive bindings for the Android View classes, and see how to use RxBinding in an app.

18.

Retrofit - Coming Soon

In earlier chapters, you've used Retrofit to add networking to your reactive apps. In this chapter, explore exactly how Retrofit interfaces with the Rx world and see how you can take advantage of all that it offers.

19.

RxPreferences: - Coming Soon

The RxPreferences library provides a reactive wrapper around SharedPreferences. In this chapter, you'll learn how the library works and how you can use it to effectively stream preference changes.

20.

RxPermissions - Coming Soon

There's a fantastic library called RxPermissions that you'll use in this chapter to help alleviate the pain points of asking the user for permissions at runtime, giving you a reactive flow when requesting permissions.

Section V: Putting It All Together

21.

RxJava & Jetpack - Coming Soon

Android Jetpack is a suite of libraries provided by the Android team to make developing Android apps a breeze. You've already seen ViewModel and LiveData used with RxJava. In this chapter, you'll explore using the Room and Paging Library components from Jetpack in a reactive app.

22.

Building a Complete RxJava App - Coming Soon

To conclude this book, you’ll architect and code a small RxJava application. The goal is not to use Rx “at all costs”, but rather to make design decisions that lead to a tidy architecture with stable, predictable and modular behavior. The application is simple by design, to clearly present ideas you can use to architect your own applications.

Meet the authors

Average Rating

5 /5

Leave a review for this product

2 reviews

Reactive Programming with Kotlin

The book that teaches you to use RxJava, RxAndroid and RxKotlin to create complex reactive applications on Android and exercise full control over the library to leverage the full power of reactive programming in your apps.

Note: This book is in Early Access. You’ll get advance access to the book while it’s in development, and you’ll get a free update to the complete digital edition of the book when it’s complete!

Estimated final release date: Fall 2019.

Top