PATTERN
Observer
Oberver Pattern enables the broadcast communication between an event subject, that emits changes to its state to all of its observers.
Usage
Modern day usage is biased by the existence of rx and the reactive libraries across most important languages. Most modern libraries rely on observables and observers to get the most out of streams.
Examples
The best example both usage and implementation is http://reactivex.io/. In Angular it is very common for data binding matters.