Quá trình đưa (chuyển đổi) các đối tượng được ghép nối (phụ thuộc) vào các đối tượng được tách rời (độc lập) được gọi là Dependency Injection.
Các kiểu tiêm phụ thuộc
Có bốn loại DI:
1.Constructor Injection
2.Setter Injection
3. tiêm dựa trên giao diện
4.Service Locator Injection
Chèn mã lệnh
Khối mã lệnh được sử dụng để giao diện tham số hiển thị thông qua nhà thầu được tham số hóa.
Nó đưa các phụ thuộc vào thông qua một phương thức thầu như là các lớp tạo đối tượng khác.
Tiêm chất định hình
Getter và Setter Injection đưa phần phụ thuộc vào bằng cách sử dụng thủ tục thuộc tính công khai mặc định như Gettter (get () {}) và Setter (set () {}). T
Chèn giao diện
Interface Injection tương tự như Getter và Setter DI, Getter và Setter DI sử dụng getter và setter mặc định nhưng Interface Injection sử dụng giao diện hỗ trợ một loại getter và setter rõ ràng để đặt thuộc tính giao diện.
Chèn định vị dịch vụ
Dịch vụ định vị tiêm còn được gọi là Hấp thụ phụ thuộc. Nó được sử dụng để thay thế nhà điều hành mới. Nó ẩn sự phụ thuộc của lớp bằng cách gọi trực tiếp các phương thức (mà không cần tạo đối tượng).
Ưu điểm của DI
Giảm khớp nối lớp
Tăng khả năng tái sử dụng mã
Cải thiện khả năng bảo trì mã
Cải thiện kiểm tra ứng dụng
Cấu hình tập trung
Hạn chế của phương pháp tiêm phụ thuộc
Hạn chế chính của việc chèn phụ thuộc là việc sử dụng nhiều phiên bản cùng nhau có thể trở nên rất khó khăn nếu có quá nhiều phiên bản và nhiều phụ thuộc cần được giải quyết.