It is assumed you are fairly comfortable with Java and know how to use classes, interfaces, methods, properties, variables, static/nonstatic scopes, and collections. If you have not done concurrency or multithreading, that is okay. RxJava makes these advanced topics much more accessible.
Have your favorite Java development environment ready, whether it is Intellij IDEA, Eclipse, NetBeans, or any other environment of your choosing. I will be using Intellij IDEA, although it should not matter or impact the examples in this book. I recommend that you have a build automation system as well such as Gradle or Maven, which we will walk through shortly.
Before we dive deep into RxJava, we will cover some core topics first:
- A brief history of Reactive Extensions and RxJava
- Thinking reactively
- Leveraging RxJava
- Setting up your first RxJava project
- Building your first reactive applications
- Differences between RxJava 1.0 and RxJava 2.0