PHP 设计模式之原型模式
生活随笔
收集整理的這篇文章主要介紹了
PHP 设计模式之原型模式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
<?php
// 1.與工廠模式類似,都是用來創建對象的
// 2.與工廠模式實現不同,原型模式是先創建好原型對象,然后通過 clone 原型對象來創建新的對象的。這樣就避免了類創建時重復的初始化操作
// 3.原型模式適用于大對象的創建,每創建一個大對象需要很大的開銷,如果每次 new 就會消耗很大,原型模式僅需要內存拷貝即可class Canvas
{public function init(){echo "init";}public function rect($top, $right, $bottom, $left){echo $top, $right, $bottom, $left;}
}/** 傳統模式
$canvas1 = new Canvas;
$canvas1->init();
$canvas1->rect(2,3,4,5);echo "\n=====\n";$canvas2 = new Canvas;
$canvas2->init();
$canvas2->rect(2,3,4,5);*/// 原型模式$prototype = new Canvas;
$prototype->init();$canvas1 = clone $prototype;
$canvas2 = clone $prototype;$canvas1->rect(2,3,4,5);
echo "\n=====\n";
$canvas2->rect(2,3,4,5);
總結
以上是生活随笔為你收集整理的PHP 设计模式之原型模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PHP 设计模式之数据对象映射模式
- 下一篇: PHP 设计模式之代理模式