Learning RxJava - Second Edition

Samoylov, Nick

  • 出版商: Packt Publishing
  • 出版日期: 2020-02-28
  • 售價: $1,540
  • 貴賓價: 9.5$1,463
  • 語言: 英文
  • 頁數: 412
  • 裝訂: Quality Paper - also called trade paper
  • ISBN: 1789950155
  • ISBN-13: 9781789950151
  • 相關分類: Java 程式語言
  • 海外代購書籍(需單獨結帳)



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.


Nick Samoylov

Nick Samoylov graduated from the Moscow Institute of Physics and Technology, has worked as a theoretical physicist, and learned to program as a tool for testing his mathematical models. Following the demise of the USSR, Nick created and successfully ran his own software company. In 1999, with his wife Luda and two daughters, he emigrated to the USA and has been living in Colorado ever since, working as a Java programmer. In his spare time, Nick likes to write and hike in the Rocky Mountains.

Thomas Nield

Thomas Nield is a business consultant for Southwest Airlines in Schedule Initiatives, and a maintainer for RxJavaFX and RxKotlin. Early in his career, he became fascinated with technology and its role in business analytics. After becoming proficient in Java, Kotlin, Python, SQL, and reactive programming, he became an open source contributor and an author/speaker at O'Reilly Media. He is passionate about sharing what he learns and enabling others with new skill sets. He enjoys making technical content relatable and relevant to those unfamiliar with it or who are intimidated by it. He is interested in data science, reactive programming, and the Kotlin language. He has also authored the book Getting Started with SQL, by O'Reilly Media.


  1. Thinking Reactively
  2. Observable and Observer
  3. Basic Operators
  4. Combining Observables
  5. Multicasting, Replaying, and Caching
  6. Concurrency and Parallelization
  7. Switching, Throttling, Windowing, and Buffering
  8. Flowables and Backpressure
  9. Transformers and Custom Operators
  10. Testing and Debugging
  11. RxJava on Android
  12. Using RxJava for Kotlin
  13. Appendix A: Introducing Lambda Expressions
  14. Appendix B: Functional Types
  15. Appendix C: Mixing Object-Oriented and Reactive Programming
  16. Appendix D: Materializing and Dematerializing
  17. Appendix E: Understanding Schedulers