Summary
In this chapter, you've learned the basics of Reactive Streams components, how they communicate, and their respective roles in a reactive application.
In most cases, you should avoid using the Flow API to build reactive applications as there are much more advanced and user-friendly reactive libraries available out there. The Flow API provides only the basic building blocks for reactive applications, while implementations such as Akka or RxJava will give you a richer experience, providing essential functionality such as throttling, filtering, and debouncing, to name a few. If you're interested in delving further into reactive programming, there are entire books devoted to the subject.
As mentioned before, Flow provides the basis for building your own Reactive Streams library, however complex that may be. Should you wish to implement a Reactive Streams library of your own, you should start by reviewing the Reactive Streams Technology Compatibility Kit. This test...