The Rest of the Design Patterns
- Flyweight, allows large number of small objects to be shared.
- Chain of Responsibility, gives a chance to many handlers to handle a request.
- Visitor, allows to append operations to an object structure without changing its class structure.
- Mediator, encapsulates the way a set of objects interact.
- Façade, provides a single interface to a set of classes or to a subsystem.
- Builder, separates the building of a complex object from its representation.
- Bridge, separates an abstraction from its implementation.
- Prototype, provides a cheaper alternative to object creation.
- Proxy, plays the role of a placeholder for other objects.
- Interpreter, uses inheritance and composition to build the syntax tree.
- Iterator, encapsulates the traversal of a structure.
- State, encapsulates an object’s state in a separate object.
- Memento, captures an object’s state without violating encapsulation.
- Generation Gap, provides a clean way to customise generated source code.