簡體   English   中英

.Net應用程序的IoC和DI框架

[英]IoC and DI framework for .Net applications

您能否解釋以下三個在意圖上有何不同?

1)策略注入應用程序塊

2)結構圖IoC

3)托管擴展框架

就它們執行的常見任務而言,這與泛型和C#3.0比較簡單/一致。

謝謝

Lijo

這三個庫框架具有不同的縮進,但是部分功能彼此重疊。

  1. 策略注入應用程序塊:這基本上是一個將橫切關注點集成到您的應用程序中的框架。 例如,在不接觸原始類的情況下實現方法的記錄。 因此,它提供了面向方面的編程功能。
  2. 結構圖IoC:結構圖是Control容器依存引用 / 反轉 這里的主要目標是以干凈的方式將對象構造和連接在一起。 這將導致代碼更易於測試和理解。
  3. MEF是一個擴展系統。 它的主要目標是提供一種插件機制,使許多組件和插件可以相互注冊和發現。 (例如visual-studio插件)。

每個庫都有不同的重點。 但是通常這些庫的一部分會重疊。 例如。

  • 許多依賴注入框架提供了一些面向方面的編程功能,例如策略注入應用程序塊。 但這不是重點,因此沒有那么強大。
  • MEF使用與大多數IoC容器非常相似的原理(如“結構圖”)。 實際上,它也是一個IoC容器。 但是重點是將組件連接在一起。

例如:

  • 您想實現橫切關注點,例如日志記錄,安全性等。使用策略注入應用程序塊
  • 您是否想要很好地構建應用程序結構,以便對其進行測試並使其易於理解? 像StructureMap這樣的IoC容器可以提供幫助
  • 您想為您的應用程序構建插件模型嗎? 拿MEF​​。

當然,您可以混合使用這些技術。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM