Generally, this is the Observer Effect. In the Observer Effect, the Subject maintains a list of its dependents that it must notify, the observers, whenever there is a state change. I love the observer pattern. It's so cute and intelligent. The great thing about this pattern is the lack of intermediary. It also simplifies code since it is more focused on the data required by the object, rather than needing an omniscient, complicated intermediary who would have to organize shuffling data around. This truly is one of the best design patterns.