原型模式与工程模式作用类似,都是用来创建对象。
与工程模式的实现不同,原型模式是先创建好一个原型对象,然后铜鼓clone原型对象来创建新的对象。这样就免去了类创建时重复的原始化操作。
原型模式适用于大对象的创建。创建一个大对象需要很大的开销,如果每次new就会消耗很大,原型模式仅需内存拷贝即可。
index.php
<span>$prototype</span> = <span>new</span><span> Baobab\Canvas(); </span><span>$prototype</span>-><span>init(); </span><span>$canvas1</span> = <span>clone</span> <span>$prototype</span><span>; </span><span>$canvas1</span>->rect(3,6,4,12<span>); </span><span>$canvas1</span>-><span>draw(); </span><span>$canvas2</span> = <span>clone</span> <span>$prototype</span><span>; </span><span>$canvas2</span>->rect(3,6,4,12<span>); </span><span>$canvas2</span>->draw();