In real life, a stream of water that accumulates somewhere resembles an Observable.
We have quite a few examples in terms of software:
- A spreadsheet application can be seen as an example of reactive programming, based on its internal behavior. In virtually all spreadsheet applications, interactively changing any one cell in the sheet will result in immediately reevaluating all formulas that directly or indirectly depend on that cell and updating the display to reflect these reevaluations.
- The ReactiveX concept is implemented in a variety of languages, including Java (RxJava), Python (RxPY), and JavaScript (RxJS).
- The Angular Framework uses RxJS to implement the Observable pattern.