This book will teach you how to build robust asynchronous and event-driven applications with ease.
About This Book
Who This Book Is For
This book targets existing Java developers who want to understand Reactive programming and build responsive and resilient asynchronous applications using Reactive stream implementations.
What You Will Learn
Reactive programming is an asynchronous programming model that helps you tackle the essential complexity that comes with writing such applications.
Using Reactive programming to start building applications is not immediately intuitive to a developer who has been writing programs in the imperative paradigm. To tackle the essential complexity, Reactive programming uses declarative and functional paradigms to build programs. This book sets out to make the paradigm shift easy.
This book begins by explaining what Reactive programming is, the Reactive manifesto, and the Reactive Streams specifi cation. It uses Java 9 to introduce the declarative and functional paradigm, which is necessary to write programs in the Reactive style. It explains Java 9's Flow API, an adoption of the Reactive Streams specifi cation. From this point on, it focuses on RxJava 2.0, covering topics such as creating, transforming,fi ltering, combining, and testing Observables. It discusses how to use Java's popular framework, Spring, to build event-driven, Reactive applications. You will also learn how to implement resiliency patterns using Hystrix. By the end, you will be fully equipped with the tools and techniques needed to implement robust, event-driven, Reactive applications.
Style and approach
This book is a tutorial about Reactive programming in Java using APIs as well as the RxJava library. Packed with a lot of well-described examples, it explains Reactive programming concepts in plain and readable language.