7. Проблемы зависимостей
● Невозможность Unit тестирования
● Постоянный рефакторинг при малейшем
изменении структуры зависимости
● Невозможность использование интерфейсов
16. Scopes
● container (по умолчанию): Одна итаже
instance объекта в любое время
● prototype: Каждый раз новая instance
● request – каждый подзапрос новая instance
23. IoC & Di – все проблемы решены?
Плюсы:
Минусы:
● Отсутствие зависимостей
● Легкость тестирования
● Очень высокий уровень абстракций
●Легкость расширения замены любых компонентов
● Резкое снижение производительности
● Более высокая стоимость разработки
28. Компилирование контейнера
Проходит в несколько проходов основано на интерфейсе
CompilerPassInterface
Необходимо для:
Убирание зацикливания
Убирание из общего контейнера приватных и
абстрактных сервисов
Добавление алиасов
Определения тегированных сервисов