This repo is for design pattern learning. It includes CPP programs of several design pattern.
-
Creational Patterns They provide object creational mechnisiams, which increase flexilibility and reuse of existing code.
- Factory Method
- Abstract Factory
- Singleton
- Builder
- Prototype
-
Structural Patterns They explain how to assemble objects and classed into larger data structures while keeping the structures to be flexible and efficient.
- Adapter
- Bridge
- Composite
- Decorator
- Facade
- Flyweight
- Proxy
-
Behavioral Patterns They are for efficient exchange and responsiblity delegation between differ objects.
- Chain of Responsiblity
- Command
- Iterator
- Mediator
- Momento
- Observer
- State
- Strategy
- Template Method
- Visitor