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: |
|
|||||||||
See also: |
AbstractFactory FactoryMethod Builder creational pattern summary |