Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying Learning RxJava
  • Table Of Contents Toc
Learning RxJava

Learning RxJava - Second Edition

By : Nick Samoylov, Thomas Nield
4.8 (4)
close
close
Learning RxJava

Learning RxJava

4.8 (4)
By: Nick Samoylov, Thomas Nield

Overview of this book

RxJava is not just a popular library for building asynchronous and event-based applications; it also enables you to create a cleaner and more readable code base. In this book, you’ll cover the core fundamentals of reactive programming and learn how to design and implement reactive libraries and applications. Learning RxJava will help you understand how reactive programming works and guide you in writing your first example in reactive code. You’ll get to grips with the workings of Observable and Subscriber, and see how they are used in different contexts using real-world use cases. The book will also take you through multicasting and caching to help prevent redundant work with multiple Observers. You’ll then learn how to create your own RxJava operators by reusing reactive logic. As you advance, you’ll explore effective tools and libraries to test and debug RxJava code. Finally, you’ll delve into RxAndroid extensions and use Kotlin features to streamline your Android apps. By the end of this book, you'll become proficient in writing reactive code in Java and Kotlin to build concurrent applications, including Android applications.
Table of Contents (22 chapters)
close
close
1
Section 1: Foundations of Reactive Programming in Java
5
Section 2: Reactive Operators
12
Section 3: Integration of RxJava applications
1
Appendix A: Introducing Lambda Expressions
2
Appendix B: Functional Types
5
Appendix E: Understanding Schedulers

RxJava 1.x, 2.x, or 3.0 – which one do I use?

As stated earlier, you are encouraged to use RxJava 3.0 if you can. This version will continue to grow and receive new features, while RxJava 1.x has not been developed further since March 21, 2018, and 2.x will be maintained for bug fixes only until February 28, 2021. However, there are other considerations that may lead you to use RxJava 1.x or 2.x.

If you inherit a project that is already using RxJava 1.x or 2.x, you will likely continue using it until it becomes feasible to migrate to RxJava 3.0. You can also check out David Karnok's RxJava2Interop project (https://github.com/akarnokd/RxJava2Interop), which converts Rx types from RxJava 1.x to RxJava 2.x and vice versa. After you finish this book, you may consider using this library to leverage RxJava 2.x even if you have the RxJava 1.x legacy code.

Migration to RxJava 3.0 requires mostly a change of import statements only. However, a few methods were dropped between RxJava 2.x and 3.0, some methods renamed, and new methods added (refer to the details at https://github.com/ReactiveX/RxJava/wiki/What's-different-in-3.0). The compiler will guide you and, for a typical, not overly large application, migration to RxJava 3.0 should be pretty straightforward, unless, of course, your application uses very particular version-specific features. In such a case, a rewrite would be the only way to proceed.

In RxJava, there are multiple libraries that can be used to make several Java APIs reactive and plug into RxJava seamlessly. To name just a few, these libraries include RxJava-JDBC, RxAndroid, RxJava-Extras, RxNetty, and RxJavaFX. At the time of writing, only RxAndroid and RxJavaFX have been fully ported to RxJava 2.x, and many other libraries will follow. By the time you are reading this, all major RxJava extension libraries will hopefully be ported to RxJava 2.x and some to RxJava 3.0, too.

You may prefer RxJava 3.0 because it was built on much of the hindsight and wisdom gained from RxJava 1.x and 2x. It has better performance, simpler APIs, a cleaner approach to backpressure, and is a bit safer when it comes to putting together your own operators.

CONTINUE READING
83
Tech Concepts
36
Programming languages
73
Tech Tools
Icon Unlimited access to the largest independent learning library in tech of over 8,000 expert-authored tech books and videos.
Icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Icon 50+ new titles added per month and exclusive early access to books as they are being written.
Learning RxJava
notes
bookmark Notes and Bookmarks search Search in title playlist Add to playlist download Download options font-size Font size

Change the font size

margin-width Margin width

Change margin width

day-mode Day/Sepia/Night Modes

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY

Submit Your Feedback

Modal Close icon
Modal Close icon
Modal Close icon