October 2018
Intermediate to advanced
556 pages
15h 18m
English
On the one hand, the extensive list of competitive libraries, such as RxJava and features of the Java Core library, such as CompletableStage, give us a choice as to the way in which we write code. For example, we may rely on reaching the API of RxJava in order to write a flow of the items being processed. Consequently, to build an uncomplicated asynchronous request-response interaction, it is more than enough to rely on CompletableStage. Alternatively, we may use framework specific classes such as org.springframework.util.concurrent.ListenableFuture to build an asynchronous interaction between components and simplify the work with that framework.
On the other hand, the abundance of choices may easily over-complicate ...