Разбор ООП с Delphinum

26.92K
.
Я бы объяснил кодом, но с телефона его прислать жуть как долго и не удобно.
.
L!MP, я хз правильно ли я тебя понимаю или нет, у нас в zf есть просто класс контейнера и ты экземпляры хоть глобальными делай (контейнер приложения), хоть локальными (контейнер контроллеров, контейнер сервисов), как душе угодно.

В общем да, если решил делать так, то проблем не наблюдаю.
.
L!MP
Delphinum, контекстный биндинг это когда для всех реализаций какого то интерфейса нужно использовать в качестве зависимости вот это а вот для конкретно вот этой реализации вооон то.

.
L!MP, круто, но я бы просто разные контейнеры использовал, а не разные коллекции в одном контейнере )
.
Delphinum, ну да, это считай то же самое что заюзать несколько контейнеров и самому потом с ними разбираться какой и для чего применять.
Только тут это все сам контейнер умеет делать в одно рыло
.
L!MP, я думаю мы просто привыкли к разным реализациям. У нас в zf мы просто правильно настраиваем "инициализаторы" и контейнер может делать все что тебе хочется от него.
.
Delphinum, ну а насколько я понимаю, под инициализатором подразумевается фабрика для создания конкретного сервиса?
.
L!MP, не там штука интереснее. Есть специальные классы, реализующие специальный интерфейс. Объекты этих классов могут быть добавлены в контейнер и все сервисы создаваемые этим контейнером будут перед выхлопом переданы в инициализаторы, а те добавят им нужные зависимости на основании любой логики которая в них заложена.
.
Delphinum, черт его знает, я с зендом никогда не работал, за гугли: ninject contextual binding, это должно внести ясность.
.
В особенности ту часть где идет речь о WhenInjectedInto и WhenInjectedExaclyInto
Всего: 713