This project contains implementation and notes for most of the Design Patterns used in Software Engineering. For most of the design patterns, generic template code, as well as a practical use case has been implemented for better understanding of when to apply each of the patterns.
- Singleton
- Factory Method
- Abstract Factory
- Builder
- Prototype
- Adapter
- Composite
- Decorator
- Proxy
- Facade
- Bridge
- Flyweight
- Chain of Responsibility
- Command
- Observer
- Strategy
- Template Method
- Visitor
- Interpreter
- State
- Iterator
- Mediator
- Memento