我的目標是讓我的框架儘可能脫離我的應用程序(儘管我知道這不是完全可能的)。如何使用依賴注入創建業務層對象?
我有幾種不同的常見類型的模型,我在我的應用程序...映射器,數據對象和值對象中使用。例如,UserMapper需要一個UserData對象並從數據庫收集信息,然後將其映射到UserValue對象中以供在Controller中使用。
這意味着,這些車型具有以下依賴性:
- UserMapper:需要的UserData,並建立UserValue(S)
- userData的方式:需要分貝(從框架)
- UserValue:不需要任何東西
我是否在我的框架的DIC方法中創建Mapper對象,Data對象和Value對象,以便可以自動注入依賴關係?或者我創建一個獨立的DIC /工廠來處理業務層的東西?
沒有模塊可以完全脫離其他模塊。畢竟,與其他模塊完全隔離的模塊對任何人都沒有多大用處!重要的是耦合是如何「緊密」的。 DI是一種允許模塊間耦合保持鬆動的技術。類型提示要注入的類比在方法本身中創建/提取類寬鬆,因爲可以替換請求的類的子類。類型提示接口更加寬鬆,因爲現在你可以通過任何對象來提供接口。 – GordonM 2012-02-02 22:44:43
相關:http://stackoverflow.com/questions/4835046/why-not-use-an-ioc-container-to-resolve-dependencies-for-entities-business-objec/4836790#4836790 – 2012-02-03 07:38:13