Why one should use it:
- Reactive Code is easier to reason about
Reactive code allows you to focus on interdependent events. This makes separation of concerns easier then reasoning about implementation details in a large system.
- You avoid “Callback”
Events abstract away the need for explicit callbacks and the awful amount of nesting that comes with them. The result is cleaner, more readable code.
- Models interactive apps nicely
Modern apps are highly interactive. There’s live feeds, ajax calls when buttons are clicked, synchronization of state between multiple clients. Data streams capture this functionality really nicely without having to build out our own massaging systems from scratch.
- Better Usage Of Resources
- Since all the code is asynchronous, multiple tasks can be accomplished at the same time. This better utilizes our computers resources and makes the applications run faster.