23种设计模式之原型模式(Prototype)

Posted 极简

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了23种设计模式之原型模式(Prototype)相关的知识,希望对你有一定的参考价值。

在系统开发过程中,有时候有些对象需要被频繁创建,原型模式通过给出一个原型对象来指明所要创建的对象的类型,然后通过复制这个原型对象的办法,创建出更多同类型的对象。原型模式是一种对象创建型模式,用原型实例制定创建对象的种类,并且通过复制这些原型创建新的对象。原型模式又可分为两种:浅克隆和深克隆。浅克隆仅仅复制所考虑的对象,而不复制它所引用的对象,也就是其中的成员对象并不复制;深克隆除了对象本身被复制外,对象包含的引用也被复制,即成员对象也被复制。

优点:

1)可以在运行时添加或删除产品。

2)通过改变值指定新对象。

3)通过改变结构指定新对象。

4)减少子类的生成和使用。

5)可以用类动态地配置应用程序。

使用场景:

1)在运行时,指定需要实例化的类,例如动态载入。

2)避免构建于产品的类层次结构相似的工厂类层次结构。

3)当类的实例是仅有的一些不同状态组合之一的时候。

技术分享

Prototype 模式

以上是关于23种设计模式之原型模式(Prototype)的主要内容,如果未能解决你的问题,请参考以下文章

Unity与23种设计模式原型模式(Prototype)

23种设计模式:原型模式

设计模式---对象创建模式之原型模式(prototype)

23种设计模式[5]:原型模式

设计模式之原型模式

大战设计模式23—— 原型模式