Reactive Extensions (RxJS) - What Is Reactive Programming?

Reactive Programming is in existence for scalable, elastic, resilient (it should always work), highly available, message-driven applications. Think Facebook, Google+, etc. 

Reactive Extensions is an API/solution/Tools to achieve a reactive programming paradigm using Observable Streams.

What are reactive extensions?

They are a combination of mainly 3 concepts:

observables + Operators+ Observers.

the relationship between these things --> Reactive Extensions.

Pushing data to subscribed handlers whenever data is generated or available is called an observer pattern.

Pulling data from a data source one value at a time in a synchronous (blocking) pattern is called the Iterator pattern.

The reactive extension is an extension of the Observer pattern with operators.

Enter Operators!!!!!

Observable----data----> Operators---(modified data)---->Observer Function.

This is the way Reactive extension library works---->(RxJS)

It is developed by Microsoft.

In the observable world, events == data, as we know every event passes event-related data (just like eventargs).

EventArgs is nothing but data!