Size: a a a

2021 April 22

SP

Sergey Protko in symfony
риски внесения изменений в такую систему просто ух как взлетают
источник

AK

Anton K. in symfony
ну да, дебажить это сложновато, тестить наверное ваще нереально, но как еще обеспечить взаимодействие разных бандлов?
источник

SP

Sergey Protko in symfony
я писал выше как
источник

SP

Sergey Protko in symfony
без приоритетов, явно выстраивать цепочки взаимодействий
источник

SP

Sergey Protko in symfony
есть зависимости - это должны быть либо разные ивенты либо вообще не ивенты
источник

AK

Anton K. in symfony
все эти зависимости будут означать то, что твой бандл1 должен знать про бандл2
источник

SP

Sergey Protko in symfony
если у тебя приоритеты выставлены то они так же "догадываются" что кто-то должен чет еще сделать
источник

SP

Sergey Protko in symfony
может быть это выглядит как "нет зависимостей" но temporal coupling остался
источник

AK

Anton K. in symfony
нет, если каждый выполняет только свою часть работы
источник

SP

Sergey Protko in symfony
если они выполняют свою часть работы то им не важно в каком порядке и как следствие нет приоритетов
источник

SP

Sergey Protko in symfony
а если важно - у тебя temporal coupling и они знают друг о друге, просто неявно и хер проссыш такое пока не подебажишь
источник

SP

Sergey Protko in symfony
и вот когда зависимости неявные - это прям адок
источник

AL

Alexander Lozovsky in symfony
Вы описываете совсем запущенный случай. У меня было попроще, посреди транзакции по postPersist дергался листенер который флашил свои изменения.

Мне кажется граф событий не сильно жизнь упрощает. Вариант с выкидыванием следующего события кажется и проще и правильнее. Хотя без контекста тяжело конечно делать какие-то выводы.
источник

SP

Sergey Protko in symfony
а там не оч много надо что бы "это проще" превратилось в "это неконтролируемый пиздец"
источник

SP

Sergey Protko in symfony
"это проще" когда у тебя листенеров на всю систему с десяток (у меня их больше сотни) и когда над проектом работает человек 4-5 (можно договориться и более менее люди вкурсе). А когда людей 20+ уже "не проще и лучше делать все для тупых и явно"
источник

SP

Sergey Protko in symfony
p.s. просто наброшу ради случая что странно юзать доктрину людям которые топят за какие-то там абстракции в бизнес лэйере) может быть "интерфейсов" инфраструктуры там нет зато есть проектирование модели данных под UI
источник

ES

Evgeny Savich in symfony
согласись что если на эти грабли не наступишь то не осознаешь)
источник

AK

Anton K. in symfony
ну да, у меня листенеров мало совсем, про 100+ листенеров и 20+ человек в команде слушать страшно
источник

SP

Sergey Protko in symfony
есть такое, и можно придумать пару упражнений что б люди боль прочувствовали
источник

SZ

Sergey Zolotov in symfony
это была шютка) не думал что у кого-то таке
источник