Learn reactive programming to create awesome Android and Java apps
About This Book
- Create interactive Android apps with Java Reactive Extensions
- Learn Reactive Programming through real-life examples that you can use in your Android app
- Beat Android concurrency and threading issues to take your apps to a new level
Who This Book Is For
If you are an experienced Java developer, reactive programming will give you a new way to approach scalability and concurrency in your backend systems, without forcing you to switch programming languages.
What You Will Learn
- Master the Observer pattern and create Observable objects and sequences
- Convert lists of objects to Observable sequences
- Change existing methods to reactive asynchronous functions
- Filter Observable sequences to ensure that only the value you want will reach your functions
- Transform and manipulate Observable sequences into new sequences
- Combine, merge, and concatenate Observable sequences to create new sequences
- Move away from the Android main thread and AsyncTask to learn multithreading and concurrency the easy way with Schedulers
- Communicate with a remote REST API using Retrofit Observable responses
- Create your first RxJava-powered Android app
RxJava―Reactive Extensions for the JVM―is a library for composing asynchronous and event-based programs using Observable sequences for the Java VM, which will help you beat Android platform limitations to create astonishing Android apps.
Starting with some quick background information on the Rx .NET library, this book quickly moves on to your first example. You will understand Observables and learn to filter, transform, or merge them in detail. Next, you will learn how to get rid of Threads, AsyncTasks, and Handlers with Schedulers to create a smooth user experience. Develop an easy, ready-to-go approach to REST API communications and enrich your skills by working with new challenging examples.
By the end of the book, you will have explored the reactive programming world and will have created your first Android app without having to think about threading, networking, concurrency, and collection management.