There are three basic classification of patterns Creational, Structural and Behavioral
- Abstract Factory:- Creates an instance of several families of classes
- Builder :- Separates object construction from its representation
- Factory Method:- Creates an instance of several derived classes
- Prototype:- A fully initialized instance to be copied or cloned
- Singleton:- A class in which only a single instance can exist
- Adapter:-Match interfaces of different classes.
- Bridge:-Separates an object's interface from its implementation.
- Composite:-A tree structure of simple and composite objects.
- Decorator:-Add responsibilities to objects dynamically.
- FaÃƒÂ§ade:-A single class that represents an entire subsystem.
- Flyweight:-A fine-grained instance used for efficient sharing.
- Proxy:-An object representing another object.
- Mediator:-Defines simplified communication between classes.
- Memento:-Capture and restore an object's internal state.
- Interpreter:-A way to include language elements in a program.
- Iterator:-Sequentially access the elements of a collection.
- Chain of Resp:-A way of passing a request between a chain of objects.
- Command:-Encapsulate a command request as an object.
- State:-Alter an object's behavior when its state changes.
- Strategy:-Encapsulates an algorithm inside a class.
- Observer:-A way of notifying change to a number of classes.
- Template Method:-Defer the exact steps of an algorithm to a subclass.
- Visitor:-Defines a new operation to a class without change.