gptkbp:instanceOf
|
Software Design Pattern
|
gptkbp:advantage
|
Potential Memory Leaks
Unexpected Updates
|
gptkbp:alsoKnownAs
|
gptkb:Publish-Subscribe_Pattern
|
gptkbp:author
|
gptkb:Erich_Gamma
gptkb:John_Vlissides
gptkb:Richard_Helm
gptkb:Ralph_Johnson
|
gptkbp:benefit
|
gptkb:Loose_Coupling
Dynamic Relationships
|
gptkbp:category
|
Behavioral Pattern
|
gptkbp:commonIn
|
gptkb:Model-View-Controller_(MVC)
Event Handling Systems
GUI Toolkits
|
gptkbp:component
|
Observer
Subject
|
gptkbp:describedBy
|
gptkb:Design_Patterns:_Elements_of_Reusable_Object-Oriented_Software
|
gptkbp:example
|
C# IObserver Interface
Java java.util.Observer
JavaScript Event Listeners
|
https://www.w3.org/2000/01/rdf-schema#label
|
Observer Pattern
|
gptkbp:purpose
|
Define a one-to-many dependency between objects
Notify dependents automatically of state changes
|
gptkbp:relatedTo
|
gptkb:Publish-Subscribe_Pattern
Event Bus Pattern
Mediator Pattern
|
gptkbp:usedIn
|
Object-Oriented Programming
|
gptkbp:bfsParent
|
gptkb:Design_Pattern
|
gptkbp:bfsLayer
|
5
|