Prototype

Origin: GoF 95
Reason: Create customized objects, the products, without knowing their exact classes or construction details.
Synopsis: A class, the Client, stores an instance, the Prototype, of every product it may create. A method of the Client registers prototypical instances.
Example: A CAD program allows users to draw symbols from a palette. It must be easy to provide additional symbols.
Solution:
PrototypeIF Interface implemented by all the products. symbols of CAD program
Prototype Implements the PrototypeIF interface and is cloned.  
PrototypeBuilder Supplies prototypical objects.  
See also: AbstractFactory
FactoryMethod
Builder
creational pattern summary