План:
1. Events
2. Шаблон "Data transfer object".
3. Поведения.
Выводы:
Событийная модель помогает строить слабосвязанную систему.
Есть и негативная сторона: из-за слабой связанности усложняется навигация по коду (однако, это меньшее зло).
https://github.com/lukesky1/php-up/releases/tag/1.0.10
http://design-pattern.ru/patterns/data-transfer-object.html
События есть не только в PHP, но и в других языках. Например, javascript: https://www.w3schools.com/jquery/jquery_events.asp
https://yiiframework.com.ua/ru/doc/guide/2/concept-behaviors/#pros-for-behaviors
Два урока с youtube от другого автора, для общего развития:
https://www.youtube.com/watch?v=pSJ99kVemkQ
https://www.youtube.com/watch?v=JTV8Z4L3_O0