Design Pattern Quiz
Instruction: Just Drag and Drop the Items on the Left-Side towards the Boxes containing the Definitions on the Right-Side. If it turns GREEN you win, if it turns RED you lose but you can always change your mind.
Objects to move
- Abstract Factory
- Builder
- Factory Method
- Prototype
- Singleton
- Adapter
- Bridge
- Composite
- Decorator
- Façade
- Flyweight
- Proxy
- Mediator
- Memento
- Interpreter
- Iterator
- Chain of Resp
- Command
- State
- Strategy
- Observer
- Template Method
- Visitor
Creational Pattern
Creates an instance of several families of classes
Creational Pattern
Separates object construction from its representation
Creational Pattern
Creates an instance of several derived classes
Creational Pattern
is a fully initialized instance to be copied or cloned
Creational Pattern
is a class in which only a single instance can exist
Structural Pattern
Match interfaces of different classes
Structural Pattern
Separates an object’s abstraction from its implementation
Structural Pattern
is a tree structure of simple and composite objects
Structural Pattern
Add responsibilities to objects dynamically
Structural Pattern
is a single class that represents an entire subsystem
Structural Pattern
is a fine-grained instance used for efficient sharing
Structural Pattern
is an object representing another object
Behavorial Pattern
Defines simplified communication between classes
Behavorial Pattern
Capture and restore an object's internal state
Behavorial Pattern
is a way to include language elements in a program
Behavorial Pattern
Sequentially access the elements of a collection
Behavorial Pattern
is a way of passing a request between a chain of objects
Behavorial Pattern
Encapsulate a command request as an object
Behavorial Pattern
Alter an object's behavior when its state changes
Behavorial Pattern
Encapsulates an algorithm inside a class
Behavorial Pattern
is a way of notifying change to a number of classes
Behavorial Pattern
Defer the exact steps of an algorithm to a subclass
Behavorial Pattern
Defines a new operation to a class without change
