A nice site at http://www.dofactory.com/Patterns/Patterns.aspx
Creational Patterns
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 of which only a single instance can exist
Structural Patterns
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
Facade
A single class that represents an entire subsystem
Flyweight
A fine-grained instance used for efficient sharing
Proxy
An object representing another object
Behavioral Patterns
Chain of Resp.
A way of passing a request between a chain of objects
Command
Encapsulate a command request as an object
Interpreter
A way to include language elements in a program
Iterator
Sequentially access the elements of a collection
Mediator
Defines simplified communication between classes
Memento
Capture and restore an object's internal state
Observer
A way of notifying change to a number of classes
State
Alter an object's behavior when its state changes
Strategy
Encapsulates an algorithm inside a class
Template Method
Defer the exact steps of an algorithm to a subclass
Visitor
Defines a new operation to a class without change
Namoskar!!!
I have scenario based question and I want a required help please tell me how many Patterns I required to solve my problem?
We are creating an application for shape drawing. We have to support multiple shapes
like circle, rectangle, square, polygon etc. These shapes may are related to each other
like square is a type of rectangle where rectangle is also kind of polygon. We want to
have an option of theme as well in our application. This theme option will allow us to
draw shapes with some filled content like marble theme will allow us to create shapes
filled with marbles where flower theme will allow us to create shape filled with flowers.
By default user can create shapes with borders with no fill. In order to provide
convenience to user we have an imaginary shape like Frame. The idea to introduce
frame is to hold different shapes so user can move or apply effects in one go.
Create classes / interfaces for given problem?