İçeriğe geç

Servis Bulucu Enjeksiyonu (ARCH3198)

Anahtar typescript.quality.service-locator · Önem warning · Kategori quality

DI container’ının veya provider’ın kendisini enjekte edip servisleri çalışma zamanında çözmek, bağımlılıkları gizler ve test edilebilirliği bozar. Bağımlılıklar kurucu metotla açıkça enjekte edilmelidir.

class OrderService {
constructor(private container: Container) {}
process() {
const repo = this.container.resolve<OrderRepo>("OrderRepo");
repo.save();
}
}
class OrderService {
constructor(private repo: OrderRepo) {}
process() {
this.repo.save();
}
}

Container yerine ihtiyaç duyulan servisleri doğrudan kurucu metoda enjekte edin.