Junior — Middle
Өнүктүрүүдө колдонулган DI контейнерлердин мисалдарын бере аласызбы?
sobes.tech AI
AIден жооп
C# тилинде ар түрдүү көз карандычылык инжекциясы (Dependency Injection, DI) контейнерлери кеңири колдонулат. Мына алардын кээ бир популярдуу мисалдары:
- Microsoft.Extensions.DependencyInjection — .NET Core жана .NET 5+ менен келген ички контейнер, көпчүлүк тапшырмалар үчүн жөнөкөй жана эффективдүү.
- Autofac — күчтүү жана ийкемдүү контейнер, өнүккөн мүмкүнчүлүктөргө ээ, татаал сценарийлерди колдойт.
- Ninject — ыңгайлуу жана оңой кеңейүүчү контейнер, кыска синтаксис менен.
- Unity — Microsoft Patterns & Practices тарабынан түзүлгөн контейнер, көптөгөн функцияларды колдойт.
Ички контейнердин колдонулушунун мисалы:
var services = new ServiceCollection();
services.AddTransient<IRepository, Repository>();
var provider = services.BuildServiceProvider();
var repo = provider.GetService<IRepository>();
Бул контейнерлер объекттердин жашоо циклин башкарууга жана кодду тестирлөө жана тейлөө оңой болуусуна жардам берет.