Junior — Middle
Bağlılıkların koda entegrasyonunu sağlayan yöntemler nelerdir?
sobes.tech yapay zeka
AI'dan gelen yanıt
C#'ta Bağımlılık Enjeksiyonu (Dependency Injection, DI) genellikle aşağıdaki yöntemlerle uygulanır:
- Yapıcı (Constructor) aracılığıyla — bağımlılıklar, yapıcı parametreleri aracılığıyla sınıfa geçirilir. Bu en yaygın ve önerilen yoldur.
public class Service {
private readonly IRepository _repository;
public Service(IRepository repository) {
_repository = repository;
}
}
- Özellikler (Property Injection) aracılığıyla — bağımlılıklar, sınıfın özellikleri aracılığıyla ayarlanır.
public class Service {
public IRepository Repository { get; set; }
}
- Yöntemler (Method Injection) aracılığıyla — bağımlılıklar, onları kullanan yöntemlere geçirilir.
public class Service {
public void Execute(IRepository repository) {
// repository kullanımı
}
}
Bağımlılıkları yönetmek için genellikle DI konteynerleri kullanılır (örneğin, Microsoft.Extensions.DependencyInjection), bu konteynerler gerekli nesneleri otomatik olarak oluşturup sağlar.
Bu sayede, bağımlılık enjeksiyonu, kodun daha modüler, test edilebilir ve sürdürülebilir olmasını sağlar.