[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: PDIC - Property Dependency Injection Container
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18
twin
Ба! Приехали. А вот это как понимать?

			'action' => 'ActionSay',

Это зашквар хардкод! Я все смотрю и думаю, ну что то тут не так. Сначала с толку немспейсами сбил меня, но это ни в какие ворота не лезет.

А как, скажи ка мне, дружочек, я могу сменить класс ActionSay? Ну или хотя бы переложить его в другую папку? А?

Косяяяяк.

У меня, если ты заметил конечно, это делается на раз. И не важно, где лежит класс ActionSay. И даже как называется. Я то грешным делом подумал, что это алиас, раз без немспейса. Не мог понять, как это работает. Детский сад и с боку бантик.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
chee
Цитата (twin @ 14.01.2021 - 21:30)
Этот синтаксис сложен только для первокласников.

Он сложен потому что не структурирован. Ладно это твой контейнер, ты все еще хочешь быть Д'артаньяном, так будь им. Ведь у тебя все хорошо и оптимально, ты всегда прав, придумал самое понятное объявление карты зависимости, который разберет каждый первоклассник. Молодец.

Цитата (twin @ 14.01.2021 - 21:30)
2. Алиасы используются повсеместно. У тебя их нет.

У меня их нет, ты прав. Пока что не почувствовал проблему в их отсутствии, фабрики по картам соответствия сами могут определить конечный класс и запросить у контейнера его экземпляр.

Цитата (twin @ 14.01.2021 - 21:30)
3. У меня можно использовать твой синтаксис. Один в один.

Ну так и используй. Мне свистоперделки твоего контейнера не уперлись.

Цитата (twin @ 14.01.2021 - 21:30)
Сейчас каждый раз. Но только потому, что shfred сторона не доделана.

Я думал ты сделаешь это на Pimple и PHP DI, а ты начал дописывать контейнера, я в чем виноват? я не ограничивал тебя в инструментарии.

Цитата (twin @ 14.01.2021 - 21:42)
У меня его достаточно объявить сервисом, и внедрять по алиасу. И потом достаточно сменить в одном месте. На то и IoC.

Это не IoC, это просто поддержка алиасов в контейнере зависимостей.

Цитата (twin @ 14.01.2021 - 21:42)
. Потом можно в любом новом модуле инициализировать новый контейнер

blink.gif То есть ты предлагаешь использовать несколько контейнеров в приложении? И при том настраивать их по ходу выполнения программы? Серьезно? Ты уверен?

Цитата (twin @ 14.01.2021 - 21:42)
У тебя не контейнер, а билдер

Хорошо билдер, и у тебя тоже билдер, ведь они делают одно и тоже.

Цитата (twin @ 14.01.2021 - 21:42)
Ты не можешь юзать его во всей систем

Зачем мне его использовать во всей системе? Мне нужен новый настроенный экземпляр класса, я дам это задание контейнеру. Зачем мне вообще взаимодействовать с контейнером за пределами интерфейса PSR-11?

Цитата (twin @ 14.01.2021 - 22:08)
. В идеале, в приложении должна быть лишь одна точка, где производится вызов метода container.Resolve();

В идеале! Если бы я внедрял зависимости в полученный от фабрик объект руками, то контейнер там не нужен был бы и тогда да, метод типа Resolve у меня вызывался бы в системе ровно один раз, вот тут. Если ты мне скажешь как я могу автоматически настраивать экземпляры классов по карте зависимостей в фабриках и при этом не применять контейнер, то я буду очень благодарен. Пока что я не вижу альтернативы, кроме как использовать контейнер как абстрактный билдер.


_____________
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.