在C#中實現依賴注入的不同方法及其優勢是什麼?


將耦合(依賴)物件注入(轉換)到解耦(獨立)物件的過程稱為依賴注入。

依賴注入的型別

有四種類型的DI

1. 建構函式注入

2. Setter注入

3. 基於介面的注入

4. 服務定位器注入

建構函式注入

建構函式用於透過引數化建構函式公開的介面引數。

它透過建構函式方法注入依賴項,作為建立其他類的物件。

Setter注入

Getter和Setter注入透過使用預設的公共屬性過程(例如Getter(get(){})和Setter(set(){}))來注入依賴項。

介面注入

介面注入類似於Getter和Setter DI,Getter和Setter DI使用預設的getter和setter,但介面注入使用支援介面,這是一種設定介面屬性的顯式getter和setter。

服務定位器注入

服務定位器注入也稱為依賴吸收。它用於替換new運算子。它透過直接呼叫方法(無需建立物件)來隱藏類依賴關係。

DI的優勢

減少類耦合

提高程式碼可重用性

改進程式碼可維護性

改進應用程式測試

集中式配置

依賴注入的缺點

依賴注入的主要缺點是,如果例項太多並且需要解析的依賴項太多,則同時使用許多例項可能會變得非常困難。

更新於:2020年11月25日

2K+ 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告