有些人推薦java中的工廠模式。我不知道這一點。在java中使用工廠模式的主要目標是什麼?給我你的建議哪種類型的模式有用?使用工廠模式的主要目標?
回答
有2衆所周知工廠模式:
- 工廠方法模式。
- 抽象工廠模式。
廠方法圖案基本上「涉及不指定確切的類對象的將要創建創建對象(產品)的問題。」而抽象工廠模式「提供了封裝一組具有共同主題的單個工廠的方法。」
工廠方法用於創建對象,基本上創建一個方法的工廠接口,子類可以派生和實現創建對象的方法。這允許封裝不擔心誰製造了對象,但是一旦該方法被執行,您就完成了對象。
抽象工廠模式將工廠封裝在一起,他們有same
目標函數來完成任務。例如。你可能有一個按鈕GUI,並有工廠,如WindowFactory
,LinuxFactory
,AppleFactory
,可以創建這些按鈕。將這些工廠包裝到一個抽象工廠中,以便在提供操作系統時返回一個操作系統特定的工廠來創建Button
。
希望這是明確的。對不起,沒有使用適當的英文建設性的量刑。
工廠模式:http://en.wikipedia.org/wiki/Factory_method_pattern
抽象工廠模式:http://en.wikipedia.org/wiki/Abstract_factory_pattern –
2010-03-06 13:26:42
該目標取決於工廠模式的類型,例如,抽象工廠:「提供一個界面,用於創建相關或依賴對象的族,而不指定具體的類。」從Design Patterns
大多數工廠模式允許您放鬆創建請求和創建的對象的類之間的耦合。這可以讓你保留改變主意的權利。
此方法通常用於啓用存根或模擬對象的單元測試。
工廠模式允許你分離(減少依賴)類之間這是消費者。您不需要使用構造函數創建它的依賴對象,而是爲其提供一個知道如何創建對象的工廠,並使用工廠創建相關對象。將接口與工廠結合使用可以提供更大的解耦,因爲它允許將工廠更改爲生成實現接口的不同具體對象,而無需更改消費類。在這種方式中,它經常用於單元測試,您提供了依賴關係的模擬實現,而不是用於測試的實際實現。但是,通常情況下,只要您有可能實現可根據程序的狀態或配置提供的接口的多個變體,就可以使用工廠。
你會使用工廠模式(在它的許多形式之一)時:
- 對象的創建是讓對象負責本身過於複雜。
- 對象的創建需要其他物體相互作用/知識和創造
- 對象的創建依賴於全局狀態/環境變量
- 這種對象的請求不應該被綁定到特定的實現,而是一個接口(對於抽象工廠的情況下)
- 1. 使用工廠模式
- 2. 工廠模式抽象工廠模式
- 3. 爲什麼我們需要工廠模式的工廠?
- 4. 工廠模式 - 使用模板
- 5. 廠(設計模式)的目標C
- 6. 如何使用WPF的工廠模式
- 7. 工廠設計模式(需要批判)
- 8. 工廠模式,需要downcast參數
- 9. 工廠模式諮詢需要,請
- 10. 使用應用工廠模式
- 11. 的java我目前使用我廠這樣的工廠模式問題
- 12. 目標C中的工廠方法模式:NSClassFromString()
- 13. 同工廠模式
- 14. Java工廠模式
- 15. C#工廠模式
- 16. 工廠和抽象工廠模式
- 17. 何時使用工廠模式?
- 18. Codigniter如何使用工廠模式?
- 19. 何時使用工廠方法模式?
- 20. 正確使用工廠模式?
- 21. 我應該使用工廠模式嗎?
- 22. 在工廠模式中使用反射
- 23. 在React中使用工廠模式
- 24. 過度使用工廠模式
- 25. '不健康'使用工廠模式?
- 26. 何時使用抽象工廠模式?
- 27. Selenium webdriver的工廠模式
- 28. DDD中的工廠模式
- 29. XPath中的工廠模式
- 30. JavaScript中的工廠模式
所有的圖案都是有用的,因此它們被設計以滿足特定的任務/目標。你想達到什麼目標需要設計模式? – 2010-03-06 13:15:22