2
A
回答
2
是的,IoC和Factory是兩回事。 IoC實際上是一個更通用的術語,許多事物都被認爲是IoC,所以它有助於進一步改進您所指的內容。例如,從技術上講,任何回調或事件都被認爲是IoC的實現。然而,大多數人在談論IoC時意味着依賴注入。
您可以使用Factory實現控制反轉,就像您可以使用依賴注入來實現它一樣。
你可能想到的是一個依賴注入容器,如Unity,Windows或Ninject。 DI容器是一種美化的抽象通用工廠,但它的功能遠不止於此,包括對象生命週期管理,條件綁定等...
將模式(IoC或DI)從(Factory,DI Container,Poor mans DI等),即使這些實現本身也可能是模式。
2
控制容器的反轉不主要用於依賴注入。這是讓容器控制對象的生命週期。因此inversion of control
。
這就是爲什麼你總是指定一輩子,當你在容器中註冊的事情(或者只使用默認壽命)
然而,由於容器爲您創建的對象,它也可以提供依賴注入作爲額外特徵。所以這真的是一個獎金。
另一方面,工廠模式應始終創建一個新的對象。工廠模式的目的僅僅是爲您創建正確的實施。
相關問題
- 1. 工廠模式設計
- 2. iOS工廠設計模式
- 3. 關於工廠設計模式
- 4. 瞭解抽象工廠設計模式中的抽象工廠設計模式
- 5. 設計模式名稱:是工廠嗎?
- 6. 根據IoC和抽象工廠模式的類設計
- 7. 頁面工廠設計模式硒
- 8. php工廠模式設計問題
- 9. PHP設計模式工廠,倉庫和...?
- 10. Backbone.js的工廠設計模式實現
- 11. WCF和工廠設計模式
- 12. 工廠設計模式擴展
- 13. 工廠設計模式VS構造器
- 14. 工廠設計模式禁止?
- 15. 工廠方法設計模式
- 16. 抽象工廠設計模式c#
- 17. 設計構建或工廠模式
- 18. 瞭解PHP的工廠設計模式
- 19. 工廠設計模式(需要批判)
- 20. 工廠設計模式問題
- 21. c#工廠設計模式winforms
- 22. 抽象工廠設計模式 - C#
- 23. 設計模式 - 抽象工廠 - BombedMazeFactory
- 24. 代理設計模式與IoC
- 25. 哪種設計模式與工廠模式相反?
- 26. 工廠和非工廠設計模式差異
- 27. 工廠設計模式:工廠可以保存實例嗎?
- 28. 設計模式
- 29. 設計模式:
- 30. 設計模式
「控制反轉」中的「控制」與對象的生命週期無關,請參閱http://en.wikipedia.org/wiki/Inversion_of_control – yegor256