click below
click below
Normal Size Small Size show me how
Design Patterns
Memorize Software Design Patterns
Question | Answer |
---|---|
Factory | Create individual objects when constructor alone is inadequate. Use methods to return objects. |
Singleton | Ensure there is only one instance of a class. |
Abstract Factory | Provide interface for creating families of related objects. |
Prototype | Create a set of identical objects whose type is determined at runtime. |
Façade | Provide an interface to a package of classes. Define a singleton which is the sole means for obtaining functionality from the package. |
Decorator | uses Recursion. Add responsibilities to an object at runtime. |
Composite | Represent a recursive tree of objects that aggregates and inherits from the base class for the objects. |
Adapter | Allow an application to use external functionality in a retargetable manner. |
Flyweight | Manage a large number of objects without constructing them all. |
Proxy | Avoid the unnecessary execution of expensive functionality in a manner transparent to clients. |
Interpreter | Interpret expressions written in a formal grammar. |
Iterator | Provide a way to access the elements of an aggregate object sequentially. |
Mediator | Avoid references between dependent objects. Capture mutual behavior in a separate class. |
Observer | Arrange for a set of objects to be affected by a single object. |
State | Cause an object to behave in a manner determined by its state. |
Chain of Responsibility | Allow a set of objects to service a request. Link the objects in a chain, each performs their responsibility and passes the request along. |
Command | Increase flexibility in calling for a service. Capture operations as classes. |
Template | Allow runtime variants on an algorithm. Basic algorithm in base class. |