This project implements a set of design patterns across different categories to address various software design challenges. The design patterns are organized into four categories: Creational Patterns, Structural Patterns, Behavioral Patterns, and Concurrency Patterns. Each category consists of several design patterns that provide solutions for specific problems.
- Singleton
- Factory Method
- Abstract Factory
- Builder
- Prototype
- Delegator
- Adapter
- Proxy
- Bridge
- Decorator
- Iterator
- Memento
- State
- Chain of Responsibility
- Visitor
- Mediator
- Strategy
- Callback
- Observer
- Adapter in Concurrency
- Observer (Listener)
- Thread Pool
- Thread-Safe Singleton
- Double-Checked Lock-DCL
- Read/Write Lock
- Leader/Followers