2018年5月7日 星期一

DI—Dependency Injection 依賴注入 超超簡單說明

 一般是用來解決「耦合性(相依)過高」的問題
通常都會搭配介面 interface 進行注入
讓程式保留彈性
便於在新的需求發生時
能便於抽換
下面我舉個例子


  1. ///
  2. /// Logger 的介面
  3. ///
  4. public interface ILogger
  5. {
  6. void Print(string msg, Color color);
  7. }
  8. ///
  9. /// 預設的 Console Logger
  10. ///
  11. public class ConsoleLogger : ILogger
  12. {
  13. public void Print(string msg, Color color)
  14. {
  15. System.Console.WriteLine(msg);
  16. }
  17. }
  18.  
這種繼承同一介面 interface 的手法,就叫做注入 這種手法可以簡單的利用繼承同一介面 實做自己須要的程式內容 一般都會透過 DI Container 集中註冊方式 統一管理所有DI元件 例如:Autofac 想瞭解 Autofac 可以到看看這個網頁:超簡單一分鐘學會 DI 框架 AutoFac

沒有留言:

Visual Studio 2017/2019 推薦的擴充功能與更新

參考文章: 覺得 Google 的 Blogger 不太順手?透過 HTML 的 iframe 移花接木 HackMD