DI là gì?
Dependency Injection (DI) là 1 design pattern được sử dụng để thực hiện Inversion of Control(loC). DI giúp loại bỏ việc phụ thuộc trực tiếp của class với đối tượng.
Có thể hiểu Dependency Injection một cách đơn giản như sau:
- Các module không giao tiếp trực tiếp với nhau, mà thông qua interface. Module cấp thấp sẽ implement interface, module cấp cao sẽ gọi module cấp thấp thông qua interface.
- Việc khởi tạo các module cấp thấp sẽ do DI Container thực hiện.
- Việc Module nào gắn với interface nào sẽ được config trong code hoặc trong file XML
- DI được dùng để làm giảm sự phụ thuộc giữa các module, dễ dàng hơn trong việc thay đổi module, bảo trì code và testing.
Dependency Injection (DI) is a design pattern used to implement IoC. It allows the creation of dependent objects outside of a class and provides those objects to a class through different ways. Using DI, we move the creation and binding of the dependent objects outside of the class that depends on them.