In Chapter 3, A World Full of Change - Reactive Extentions to the Rescue, we learned about observables and observers; these two objects are the most important part of functional reactive programming. Observables are objects with the capacity to listen to events occurring in an environment and they notify other objects of these events; the objects being notified are called observers and they have the capacity to react to the events propagated by an observable. They can listen for up to three events:
onNext(): Triggers when new data is propagated by an observable to this observer
onError(): Triggers when an error is propagated by an observable to this observer
onCompleted(): Triggers when the observable finishes without any error
RxJS gives us the opportunity to create observables from different sources of data using some built-in functions, but it also lets you create custom observables for any source of data you might need.
Subjects are a special class of objects that...