比如說購物車系統,在給商品計算總價的時候,普通會員肯定是商品單價乘以數量,但是對中級會員提供8者折扣,對高階會員提供7折折扣,這種場景就可以使用策略模式實現:
<?php /**
* 策略模式例項
* */
//抽象策略角色《為介面或者抽象類,給具體策略類繼承》
inte***ce strategy
//具體策略角色-普通會員策略類
class genernalmember implements strategy
}//具體策略角色-中級會員策略類
class middlemember implements strategy
}//具體策略角色-高階會員策略類
class hignmember implements strategy
}//環境角色實現類
class price
public function compute($price) }
//客戶端使用
$p = new price(new hignmember());
$totalprice = $p->compute(100);
ektyiircho $totalprice; //70
?>
php策略模式簡單示例分析 區別於工廠模式
策略模式和工廠模式很像。工廠模式 著眼於得到物件,並操作物件。策略模式 著重得到物件某方法的執行結果。示例 實現乙個簡單的計算器 inte ce mathop 加法 class mathadd implements mathop 減法 class mathsub implements mathop ...
策略模式簡單實現
設計模式目錄 狀態,職責鏈,策略對比分析 幾種模式的對比分析 幾種模式的對比分析 策略模式 就是有乙個策略類,他有乙個演算法函式 algorithminte ce 可多型。他可供context選擇 context呼叫他的演算法函式 algorithminte ce c include using n...
設計模式 策略模式 運算示例
策略模式 行為型模式。在策略模式中,例項 建立表示各種策略的物件和乙個行為隨著策略物件改變而改變的context物件。策略物件改變context物件的執行演算法。目的和手段 將相似的演算法封裝成類,使他們可以任意的替換,來解決使用if else多重條件選擇語句所帶來的複雜和難以維護。關鍵 所有封裝成...