策略模式和工廠模式很像。
工廠模式:著眼於得到物件,並操作物件。
策略模式:著重得到物件某方法的執行結果。
示例://實現乙個簡單的計算器
inte***ce mathop
//加法
class mathadd implements mathop
}//減法
class mathsub implements mathop
}//乘法
class mathmulti implements mathop
}//除法
程式設計客棧class mathdiv implements mathop
}class op
public function get_result($num1,$num2)
}$obj = new op('add');
echo $obj->get_result(6,2);//8
$obj = new op('sub');
echo $obj->get_result程式設計客棧(6,5);//1
$obj = new op('multi');
echo $obj->get_result(6,2);//12
$obj = new op('div');
echo $obj->get_result(6,2);//3
PHP實現的策略模式簡單示例
比如說購物車系統,在給商品計算總價的時候,普通會員肯定是商品單價乘以數量,但是對中級會員提供8者折扣,對高階會員提供7折折扣,這種場景就可以使用策略模式實現 策略模式例項 抽象策略角色 為介面或者抽象類,給具體策略類繼承 inte ce strategy 具體策略角色 普通會員策略類 class g...
簡單工廠模式和策略模式的區別
最近一直在抽時間研究設計模式,之前對設計模式也有一定的了解,但是都沒有平心靜氣的去研究過,只是了解了一些皮毛,最近打算再深入研究一下,重新開啟了設計模式的資料,對之前的疑問乙個個的刨根問底,今天看了簡單工廠模式和策略模式看的人有點小暈,兩個的大概思路沒有怎麼變,都是通過多型去減少 的耦合度,怎麼看兩...
簡單工廠模式和策略模式的區別
而下面是我的理解 按一般教程中出現的例子理解 簡單工廠模式 客戶端傳乙個條件進工廠類,工廠類根據條件建立相應的產品類物件,並return給客戶端,供客戶端使用。即客戶端使用的是工廠類生產的產品物件。策略模式 客戶端建立乙個context類物件a 可以看作是工廠模式中工廠類 建立乙個策略物件並傳參給物...