https://github.com/ehsangazar/design-patterns-cpp
All Design Patterns Samples in C++
https://github.com/ehsangazar/design-patterns-cpp
abstract-factory-pattern adapter-pattern bridge-pattern builder-pattern c-plus-plus chain-of-responsibility-pattern command-pattern composite-patterns decorator-pattern design-pattern facade-pattern factory-method-pattern flyweight-pattern interpreter-pattern iterator-pattern mediator-pattern null-object-pattern prototype-pattern proxy-pattern singleton-pattern
Last synced: 3 months ago
JSON representation
All Design Patterns Samples in C++
- Host: GitHub
- URL: https://github.com/ehsangazar/design-patterns-cpp
- Owner: ehsangazar
- Created: 2015-10-13T11:57:23.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2017-09-27T06:24:13.000Z (about 8 years ago)
- Last Synced: 2025-07-14T23:36:02.285Z (3 months ago)
- Topics: abstract-factory-pattern, adapter-pattern, bridge-pattern, builder-pattern, c-plus-plus, chain-of-responsibility-pattern, command-pattern, composite-patterns, decorator-pattern, design-pattern, facade-pattern, factory-method-pattern, flyweight-pattern, interpreter-pattern, iterator-pattern, mediator-pattern, null-object-pattern, prototype-pattern, proxy-pattern, singleton-pattern
- Language: C++
- Homepage:
- Size: 40 KB
- Stars: 45
- Watchers: 7
- Forks: 30
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Design Patterns in C++ with Real Examples
In this repo you can find all familiar design patterns that uses in most C++ frameworks.
Design patterns divided into three categories as below :Creational
----------- [**Abstract Factory**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/creational-patterns/abstract-factory.cpp)
- [**Builder**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/creational-patterns/builder.cpp)
- [**Factory Method**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/creational-patterns/factory-method.cpp)
- [**Prototype**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/creational-patterns/prototype.cpp)
- [**Singleton**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/creational-patterns/singleton.cpp)
Structural
----------- [**Adapter**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/structural-patterns/adapter.cpp)
- [**Bridge**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/structural-patterns/bridge.cpp)
- [**Composite**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/structural-patterns/composite.cpp)
- [**Decorator**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/structural-patterns/decorator.cpp)
- [**Facade**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/structural-patterns/facade.cpp)
- [**Flyweight**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/structural-patterns/flyweight.cpp)
- [**Null Object**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/structural-patterns/null_object.cpp)
- [**Proxy**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/structural-patterns/proxy.cpp)Behavioral
----------- [**Chain Of Responsibility**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/behavioral-patterns/chain-of-responsibility.cpp)
- [**Command**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/behavioral-patterns/command.cpp)
- [**Interpreter**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/behavioral-patterns/interpreter.cpp)
- [**Iterator**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/behavioral-patterns/iterator.cpp)
- [**Mediator**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/behavioral-patterns/mediator.cpp)
- [**Momento**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/behavioral-patterns/momento.cpp)
- [**Observer**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/behavioral-patterns/observer.cpp)
- [**State**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/behavioral-patterns/state.cpp)
- [**Strategy**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/behavioral-patterns/strategy.cpp)
- [**Template Method**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/behavioral-patterns/template-method.cpp)
- [**Visitor**](https://github.com/ehsangazar/design-patterns-cpp/blob/master/behavioral-patterns/visitor.cpp)