How does Rx relate to reactive programming?

I read about the basic idea of ​​reactive programming as variables that change over time depending on the expression of the original value. I even implemented this using expressions. But then I look at Microsoft Reactive Extensions (Rx) and see something completely different. Where are the variables that automatically update over time? No one has seen them. Just some kind of fancy way of listing through event arguments.

So my question is: how "reactive" is Rx really? Is the functionality that we see there now a precursor to what will happen? Or is Microsoft casually throwing a buzz around itself? Or am I just not completely grabbing the point (in this case, I would like you to explain how)?

EDIT: I got great answers already with Rx descriptions, moreover, the question is closed. :( But I still hope to hear more on the lines:

  • In what sense is Rx "reactive"? I thought self-updating variables are central to this idea, but Rx doesn't give them. LINQ-to-Events seems to be the best name for Rx. I'm starting to think that Microsoft may have misused the word reactive when applied to Rx.
  • How will the current Rx functionality be the forerunner of self-updating variables? I implemented such functionality and did not notice anything useful for Rx for this purpose.
+5
source share
3 answers

"Reactive" may be more a buzzword than anything, although it is well connected with another language concept called Functional Reactive Programming ...

Anyway, what Rx "was answered by much smarter people than me, but I will give it to him:

  • In the beginning there were things; these things took shape and were called POCOs

  • Collections of these POCOs were created and therefore they were named IEnumerable<T>

  • " , - , - ! , !"

  • TheErik, TheBart : ", POCOs, IEnumerable<T>!"

  • IObservable<T>, IEnumerable<T> ( "" , "" )

  • " Genesis", , LINQ " " ISchedulers "Rx"

+7

, ! . , - . Rx Linq "Event" - -, IObservable.

, , Rx, . "", event/event handler .. .. Rx , . , , , . , , .net, Observable.FromEventPattern factory → IObservables, IDisposable ( ).

Rx data parallelism, TPL. , , , Rx IObservable, / .

IObservable Linq, Linq (, TPL).

, IObservable , , INPC, ObservableCollection. .

+2

" " " ".

There are various ways of representing this. The Rx Framework basically redefines the traditional event-based paradigm as a streaming representation of events and provides operations around it.

0
source

All Articles