Inversion of Control дегеніміз не
Архитектурадағы басқаруды төңкеру
Inversion of Control (IoC) — бағдарлама ағынын басқаруды қолданба кодынан сыртқы фреймворкке немесе контейнерге беретін жобалау принципі.
Негізгі IoC үлгілері
- Dependency Injection (DI) — конструктор, setter немесе интерфейс арқылы тәуелділіктерді енгізу
- Service Locator — орталықтандырылған сервис тізілімі
- Factory Pattern — фабрикалар арқылы объектілер құру
- Template Method — базалық сыныпта алгоритм қаңқасын анықтау
IoC артықшылықтары
- Компоненттер арасындағы әлсіз байланыс
- Mock-тар арқылы жеңілдетілген тестілеу
- Икемді тәуелділік конфигурациясы
- Кодты қайта пайдалану мүмкіндігі
Танымал IoC контейнерлері
- Spring (Java) — ең танымал IoC контейнер
- ASP.NET Core DI — .NET-те кіріктірілген DI
- InversifyJS — TypeScript/JavaScript үшін IoC
- Autofac, Ninject — .NET үшін баламалар