在许多面向对象的应用程序中,有些对象的创建代价过大或过于复杂,此时若是可以只作轻微的改动就可以重建相同的对象,以适应程序中的特定情况,那真是极好的。比较典型的情况就是复制组合结构,比如树型结构,从零开始构建一个树型组合体非常困难。与创建各种跟父类差异较少的独立类相比,让某些对象生成自身的复制品这种做法可复用性极高并且更易于维护。
应用于“复制”操作的模式称为原型模式,复制指用同一模具生产一系列的产品,模具所基于的物品称为原型。原型决定了最终产品应该是什么样子,尽管产品是用同一模具复制的,但是某些属性可以稍有不同。
模型图