Size: a a a

2021 March 04

В

Виктор in Yii Framework 3
Dmitriy S
Да, тег-билдер, котрый будет формировать теги по кодовой базе по определенным правилам (интерфейсу, пути, неймспейсу и т.д.) и потом передавать этот конфиг в конструктор контейнера. Так мы получим автотегирование сервисов контейнера. Либо можно тегировать в контейнере вручную, что геморно если тебе дефинишин надо прописывать только ради тега.
А на больших монорепах это шустро работать будет?
источник

DS

Dmitriy S in Yii Framework 3
Виктор
А на больших монорепах это шустро работать будет?
Хз, сделаю - потестю. Но билд тегов только в дев окружении, так что не особо критично, если там не совсем долго.
источник

В

Виктор in Yii Framework 3
Вот оно что. Я было подумал, что оно всегда на лету.
источник

DS

Dmitriy S in Yii Framework 3
Виктор
Вот оно что. Я было подумал, что оно всегда на лету.
Не, это будет слишком в проде такое включать) Это как с билдом конфигов в старом плагине.
источник

AB

Alexander Borisov in Yii Framework 3
А как это в проде юзать? Тег-билдер запускать как часть деплоя?
источник

DS

Dmitriy S in Yii Framework 3
Alexander Borisov
А как это в проде юзать? Тег-билдер запускать как часть деплоя?
Не, билдишь теги в дев в файл и пушиш конфиг в репу. А в раннере
$container = new Container ($config->get('web'), $config->get('providers-web'), $config->get('tags'));
источник

AB

Alexander Borisov in Yii Framework 3
А если надо будет tags-web, tags-console?
источник

DS

Dmitriy S in Yii Framework 3
Alexander Borisov
А если надо будет tags-web, tags-console?
Собирать несколько файлов. Как сделаю, скажу точнее.
источник

DS

Dmitriy S in Yii Framework 3
Типа такого конфига в билдере
return [
   'common' => [
       'event-listener-tag' => [
           'interface' => EventListenerInterface::class
       ]
   ],
    'console' => [
       'command-tag' => [
           'interface' => CommandInterface::class
       ]
   ],
    'web' => [
       'controller-tag' => [
           'namespace' => '*\Controller'
       ]
   ],

];
Сформирует файлы tags-common.php, tags-web.php и tags-console.php
источник

AM

Alexander Makarov in Yii Framework 3
источник

NO

Nex Otaku in Yii Framework 3
Dmitriy S
Да, тег-билдер, котрый будет формировать теги по кодовой базе по определенным правилам (интерфейсу, пути, неймспейсу и т.д.) и потом передавать этот конфиг в конструктор контейнера. Так мы получим автотегирование сервисов контейнера. Либо можно тегировать в контейнере вручную, что геморно если тебе дефинишин надо прописывать только ради тега.
Опять переусложнение)
источник

AB

Alexander Borisov in Yii Framework 3
Ну это с какой стороны посмотреть
источник

NO

Nex Otaku in Yii Framework 3
Да с любой
источник

AB

Alexander Borisov in Yii Framework 3
ну с точки зрения пользователя zero-configuration это круто. просто пишешь код, а фреймворк все понимает
источник

NO

Nex Otaku in Yii Framework 3
Не. Магия, про которую никто не в курсе как она работает и как еë дебажить. Вот так.
источник

DS

Dmitriy S in Yii Framework 3
Nex Otaku
Опять переусложнение)
Тег-билдер в отдельном пакете. Не хочешь, не юзай, прописывай теги ручками.
источник

DS

Dmitriy S in Yii Framework 3
Nex Otaku
Не. Магия, про которую никто не в курсе как она работает и как еë дебажить. Вот так.
Никакой магии, все сервисы по тегам прописаны в файле конфига.
источник

AB

Alexander Borisov in Yii Framework 3
Nex Otaku
Не. Магия, про которую никто не в курсе как она работает и как еë дебажить. Вот так.
С тем же успехом обычный DI-контейнер - тоже магия, кто его знает как он там конвертирует конфиг в код… Ручками граф надо строить 🙂
источник

NO

Nex Otaku in Yii Framework 3
Alexander Borisov
С тем же успехом обычный DI-контейнер - тоже магия, кто его знает как он там конвертирует конфиг в код… Ручками граф надо строить 🙂
Хороший контейнер прост как чурка. Но и его можно при желании переусложнить на ровном месте, да...
источник

AM

Alexander Makarov in Yii Framework 3
Для кого просто, а для кого магия.
источник