Junior — Middle
როგორ უზრუნველყოფს კოდის დამოკიდებულებების ინტეგრაციას მეთოდები?
sobes.tech AI
პასუხი AI-სგან
C#-ში დამოკიდებულებების შეყვანა (Dependency Injection, DI) ჩვეულებრივ შემდეგი მეთოდებით ხორციელდება:
- კონსტრუქტორის მეშვეობით — დამოკიდებულებები გადაეცემა კლასს კონსტრუქტორის პარამეტრებით. ეს ყველაზე გავრცელებული და რეკომენდებული მეთოდია.
public class Service {
private readonly IRepository _repository;
public Service(IRepository repository) {
_repository = repository;
}
}
- მოძებნეთ თვისებების მეშვეობით (Property Injection) — დამოკიდებულებები კლასის თვისებებით ინიშნება.
public class Service {
public IRepository Repository { get; set; }
}
- მეთოდების მეშვეობით (Method Injection) — დამოკიდებულებები გადაეცემა მეთოდებს, რომლებიც იყენებენ მათ.
public class Service {
public void Execute(IRepository repository) {
// გამოყენება repository-ის
}
}
დამოკიდებულებების მართვა ხშირად ხდება DI კონტეინერების გამოყენებით (მაგალითად, Microsoft.Extensions.DependencyInjection), რომლებიც ავტომატურად ქმნიან და უზრუნველყოფენ საჭირო ობიექტებს.
ამ გზით, დამოკიდებულებების შეყვანა საშუალებას აძლევს კოდს იყოს უფრო მოდულური, ტესტირებადი და ადვილად შენარჩუნებადი.