Sam Dark
Новичок
Не, есть ещё и DI-контейнер, который содержит конфиг и используется тем компонентом, что инжектит в другие компоненты. У нас инжектить умеет приложение (именно оно создаёт компоненты), и конфигом выступает его же свойство components.
Из Yii::$app обычно берётся лишь компонент по умолчанию, но его можно и проинжектить через конфиг. Так гибче, тестировать легче и API не как звездолёт.
Из Yii::$app обычно берётся лишь компонент по умолчанию, но его можно и проинжектить через конфиг. Так гибче, тестировать легче и API не как звездолёт.

Проблема в том, что смотрит и осознаёт такие видюшки очень мало человек. Ну и вторая проблема в том, что там не объяснено, что контейнер может быть не только контейнером, но и, например, экземпляром $app.