Sobes.tech
Junior — Middle

Geliştirmede kullanılan DI konteynerlerine örnekler verebilir misiniz?

sobes.tech yapay zeka

AI'dan gelen yanıt

C# dilinde bağımlılık enjeksiyonu (Dependency Injection, DI) için çeşitli DI kapsayıcıları yaygın olarak kullanılır. İşte bazı popüler örnekler:

  • Microsoft.Extensions.DependencyInjection — .NET Core ve .NET 5+ ile gelen yerleşik kapsayıcı, çoğu görev için basit ve etkilidir.
  • Autofac — gelişmiş özelliklere sahip güçlü ve esnek bir kapsayıcı, karmaşık senaryoları destekler.
  • Ninject — kullanışlı ve kolayca genişletilebilir, özlü sözdizimi ile.
  • Unity — Microsoft Patterns & Practices tarafından geliştirilen kapsayıcı, birçok fonksiyonu destekler.

Yerleşik kapsayıcı kullanımı örneği:

var services = new ServiceCollection();
services.AddTransient<IRepository, Repository>();
var provider = services.BuildServiceProvider();
var repo = provider.GetService<IRepository>();

Bu kapsayıcılar, nesnelerin yaşam döngüsünü yönetmeye ve kodun test edilmesi ve bakımı kolaylaştırmaya yardımcı olur.