./articles/Object-Oriented Design Patterns (WIP)
Design patterns describe reusable approaches to recurring software design problems. The Gang of Four catalog organizes them around three concerns: how objects are created, how they are composed, and how they collaborate.
Explore the category that matches your design problem. Each guide connects the intent of a pattern to practical examples, implementation trade-offs, and situations where it is useful.
Object creation
Creational Design Patterns
How should objects be created?
Explore object creation and lifecycle decisions, from selecting an implementation to assembling, copying, or sharing an instance.
- Factory Method
- Abstract Factory
- Builder
- Prototype
- Singleton
Object composition
Structural Design Patterns
How should objects fit together?
Organize classes and objects into flexible structures, adapt interfaces, and compose responsibilities behind clear boundaries.
- Adapter
- Bridge
- Composite
- Decorator
- Facade
- Flyweight
- Proxy
Object collaboration
Behavioral Design Patterns
How should objects work together?
Describe communication and shared responsibilities, with patterns for algorithms, requests, notifications, and coordinated behavior.
- Iterator
- Command
- Strategy
- Observer
- Chain of Responsibility
- Template Method
- State
- Mediator
- Memento
- Visitor