- Decorator Pattern: Wraps an object to provide new behavior.
- Adapter Pattern: Wraps an object and provides a different interface.
- Template Method Pattern: Subclasses decide how to implement steps in an algorithm.
- Factory Method Pattern: Subclasses decide which class to instantiate.
- Singleton Pattern: Ensures that only one object is created.
- Strategy Pattern: Encapsulates interchangeable behaviors and uses delegation to decide which one to use.
- Composite Pattern: Clients treat collections of objects and individual objects uniformly.
- State Pattern: Encapsulates state-based behavior and uses delegation to switch between behaviors.
- Iterator Pattern: Traverses a collection of objects without exposing its implementation.
- Facade Pattern: Simplifies a group of classes’ interfaces.
- Decorator Pattern: Wraps an object to provide new behavior.
- Abstract Factory: Allows clients to create families of objects without specifying their concrete classes.
- Observer Pattern: Allows objects to be notified when their state changes.
- Proxy Pattern: Wraps an object to control access to it.
- Command Pattern: Encapsulates requests as objects.
Notes on Software Design Patterns
Updated
