通過分配或委託其他物件,委託設計模式能夠去除核心物件中的判決和複雜的功能性。
<?php//委託模式-去除核心物件中的判決和複雜的功能性
class
cd
public
function play***($song
)
public
function playmp4($song
)
} $oldcd = new
cd;
$oldcd->addsong("1");
$oldcd->addsong("2");
$oldcd->addsong("3");
$type = '***';
if ($type == '***')
else
**:通過委託模式,改進後的cd類
<?php//委託模式-去除核心物件中的判決和複雜的功能性
//改進cd類
class
cddelegate
public
function play($type, $song
)
} class
***
} class
mp4
} $newcd = new
cd;
$newcd->addsong("1");
$newcd->addsong("2");
$newcd->addsong("3");
$type = '***';
$oldcd->play('***', '1'); //
**:
PHP設計模式系列 委託模式
通過分配或委託其他物件,委託設計模式能夠去除核心物件中的判決和複雜的功能性。php view plain copy print?委託模式 去除核心物件中的判決和複雜的功能性 class cd public function play song public function playmp4 song...
php設計模式之委託模式
php設計模式之委託模式 使用委託模式目的是消除潛在的 難以控制的if else語句。原來的程式寫法 var playlist playlist new playlist playlist addsong home aaron music aa.brr playlist addsong home a...
PHP設計模式系列 策略模式
策略模式設計幫助構建的物件不必自身包含邏輯,而是能夠根據需要利用其他物件中的演算法。例如有乙個cd類,我們類儲存了cd的資訊。原先的時候,我們在cd類中直接呼叫getcd方法給出xml的結果 隨著業務擴充套件,需求方提出需要json資料格式輸出 這個時候我們引進了策略模式,可以讓使用方根據需求自由選...