design-patterns
design-patterns copied to clipboard
C++ Implementation for 23 Design Patterns
C++ Design Patterns
C++ Implementation for 23 Design Patterns
Creational Patterns
-
Abstract Factory, families of product objects
-
Builder, how a composite object gets created
-
Factory Method, subclass of object that is instantiated
-
Prototype, class of object that is instantiated
-
Singleton, the sole instance of a class
Structural Patterns
-
Adapter, interface to an object
-
Bridge, implementation of an object
-
Composite, structure and composition of an object
-
Decorator, responsibilities of an object without subclassing
-
Façade, interface to a subsystem
-
Flyweight, storage costs of objects
-
Proxy, how an object is accessed (its location)
Behavioral Patterns
-
Chain of Responsibility, object that can fulfill a request
-
Command, when and how a request is fulfilled
-
Interpreter, grammar and interpretation of a language
-
Iterator, how an aggregate's elements are accessed
-
Mediator, how and which objects interact with each other
-
Memento, what private information is stored outside an object, and when
-
Observer, how the dependent objects stay up to date
-
State, states of an object
-
Strategy, an algorithm
-
Template Method, steps of an algorithm
-
Visitor, operations that can be applied to objects without changing their classes
References
Design patterns in this repository are based on