Главная

Java

Spring


IoC, Inversion of Control(Инверсия управления)


IoC — (принцип) "Don't call us, we'll call you". Мы передаём права на создание бинов(обьектов) другой сущности (Фабрике).

Мы не сэтим зависимости руками внутри класса !!! Зависимости приходят извне (Inversion of Control) !! Самы частый пример - зависимость передаётся через конструктор класса (конструктор на вход должени принимать интерфейс). Мы настраеваем не класс ,а контейнер ! Говорим в каких случаях контейнер должен передавать этому классу одни зависимости , а в каких другие зависимости. А контейнер через Dependency Injection передаёт уже зависимости этому классу.

Центральной частью Spring является контейнер Inversion of Control, который предоставляет средства конфигурирования и управления объектами Java с помощью рефлексии. Контейнер отвечает за управление жизненным циклом объекта: создание объектов, вызов методов инициализации и конфигурирование объектов путём связывания их между собой.

Объекты, создаваемые контейнером, также называются управляемыми объектами (beans). Обычно конфигурирование контейнера осуществляется путём загрузки XML-файлов, содержащих определение bean’ов и предоставляющих информацию, необходимую для создания bean’ов.

Объекты могут быть получены одним из двух способов:

Полезные ссылки: