簡單工廠模式和策略模式的區別(原)


網絡中看到的一篇文章:策略模式與簡單工廠模式區別(轉)

 

而下面是我的理解:

按一般教程中出現的例子理解:

簡單工廠模式:客戶端傳一個條件進工廠類,工廠類根據條件創建相應的產品類對象,並return給客戶端,供客戶端使用。即客戶端使用的是工廠類生產的產品對象。

策略模式:客戶端創建一個Context類對象a(可以看作是工廠模式中工廠類),創建一個策略對象並傳參給對象a,然后客戶端使用a對象的某些方法來使用前面傳參進來的策略,即客戶端是通過a對象使用策略的。

簡單的說,

1、工廠模式根據條件生產出產品給客戶端用。而策略模式是客戶端使用傳參給Context的策略(你也可以理成產品),傳入策略的不同,調用同樣方法得到的結果也不同。

2、工廠模式:客戶端是使用工廠類生產的對象進行操作,策略模式:客戶端使用自己傳給Context的策略的對象進行操作。

作者:ouchuquan

出處:http://www.cnblogs.com/langtianya

本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM