An object which registers itself to listen for updates on another object
In an observer-pattern, observers register themselves with a subject. The subject notifies each of its observers about updates to itself, usually by calling a method on the observers.