Spring 中 IOC 和依賴注入的區別。
控制反轉是一種設計原則,它有助於反轉物件建立的控制。
根據 Martin Fowler 撰寫的論文,控制反轉是一種原則,其中程式的控制流被反轉:程式設計師不再控制程式的流程,而是外部源(框架、服務、其他元件)控制它。就像我們將某些東西插入到其他東西中一樣。他提到了關於 EJB 2.0 的一個例子。
依賴注入是一種實現 IOC 原則的設計模式。DI 提供物件所需的物件。假設類 X 依賴於 Y。因此,與其在類“X”中建立 Y 的物件,不如透過建構函式或 setter 注入來注入依賴項。
| 序號 | 關鍵 | IOC | 依賴注入 |
|---|---|---|---|
| 1 | 設計原則 | 它是程式控制流反轉的設計原則 | 它是 IOC 原則的子型別之一 |
| 2 | 實現 | 它是一個由多種設計模式實現的術語,例如服務定位器、事件、委託和依賴注入 | DI 是一種可以透過建構函式和 setter 注入實現的設計模式 |
| 3 | 用例 | 面向切面程式設計是實現 IOC 的一種方式 | 在業務需求發生變化的情況下,無需進行程式碼更改 |
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP