Reactive programming

“In computing, Reactive Programming is Programming paradigm oriented around data-flow and propagation of change.”

Reactive Programming is concurrent programming (running parallel) and high performance. Reactive Programming a gift from Microsoft(C# extensions).

Reactive Programming is a style of micro-architecture involving intelligent routing and consumption of events

The Four Reactive principles

  1. Responsive
  2. Scalable
  3. Resilient(stretched)
  4. Event-Driven (Message-Driven)

“Reactive” is used broadly to define the event-driven system (like UI Update and Network Protocol), and Non-Blocking event-driven architecture.

if we want to build reactive apps, we need two essential building blocks.

  1.  A contract for interop between Non-blocking components(Reactive Stream spec).
  2.  API for composing asynchronous program(Reactive Extension).

Reactive is Domain of Specific programming languages.

Reactive Extensions (ReactiveX or RX):


ReactiveX for platforms and frameworks

ReactiveX GitHub