Strategy Design Pattern
Defines a family of algorithms, encapsulates each one, and lets you swap them at runtime without changing the client code.
Strategy Design Pattern
Defines a family of algorithms, encapsulates each one, and lets you swap them at runtime without changing the client code.
Observer Design Pattern
Establishes a one-to-many dependency so when one object’s state changes, all its dependents are automatically notified and updated.
Decorator Design Pattern
Dynamically adds new behaviors or responsibilities to objects without altering their underlying structure.
State Design Pattern
Allows an object to change its behavior when its internal state changes, appearing as if it has switched class.
Factory Design Pattern
Provides an interface for creating objects without specifying their concrete implementation.
Singleton Design Pattern
Ensures a class has only one instance and provides a global point of access to it.
Facade Design Pattern
Offers a simplified, unified interface to a complex subsystem, hiding its internal details.
Iterator Design Pattern
Provides a way to access elements of a collection sequentially without exposing its underlying representation.
Command Design Pattern
Encapsulates a request as an object, letting you parameterize actions, queue them, and support undo/redo.