The Observer pattern methods
There are two different ways of notifying the Observer
of the changes that happen in the Subject
. They can be classified as push or pull models.
The pull model
In the pull model, Observers
play an active role as follows:
The
Subject
broadcasts to all the registeredObservers
when there is any changeThe
Observer
is responsible for getting the changes or pulling data from the subscriber when there is an amendmentThe pull model is ineffective as it involves two steps—the first step where the
Subject
notifies theObserver
and the second step where theObserver
pulls the required data from the Subject
The push model
In the push model, the Subject
is the one that plays a dominant role as follows:
Unlike the pull model, the changes are pushed by the
Subject
to theObserver
.In this model, the Subject can send detailed information to the
Observer
(even though it may not be needed). This can result in sluggish response times when a large amount of data is sent by theSubject...