Behavioral Design Patterns
Behavioral Design Patterns are concerned with algorithms and the assignment of responsibilities between objects.
1. Observer
The Observer design pattern establishes a one-to-many dependency between objects, so that when one object changes state, all its dependents are notified and updated automatically. This promotes loose coupling between the observed subject and its observers, facilitating flexible and scalable system designs.