The name of the design pattern is Observer. The intent of this design pattern is to provide a loose coupling between an observable subject and one or more observers . A subject notifies it observers whenever its (the subject’s) state changes.
Read moreWhen should you use Observer pattern?
Use the Observer pattern when changes to the state of one object may require changing other objects , and the actual set of objects is unknown beforehand or changes dynamically. You can often experience this problem when working with classes of the graphical user interface.
Read more