В чём суть поведенческих шаблонов проектирования?


#1

Слышал что все шаблоны проектирования делятся на 3 типа, а именно - порождающие, структурные и поведенечкие. Если с порождающими и со структурными всё отностельно понятно, то вот вопрос зачем нужны поведеннческие паттерны для меня остаётся неотвеченым.


#2

Поведенческие шаблоны проектирования определяют общие закономерности связей между объектами, реализующими данные паттерны. Следование этим шаблонам уменьшает связность системы и облегчает коммуникацию между объектами, что улучшает гибкость программного продукта.

Они связаны с присвоением обязанностей (responsibilities) объектам. От структурных шаблонов они отличаются тем, что не просто описывают структуру, но и очерчивают шаблоны передачи данных, обеспечения взаимодействия. То есть поведенческие шаблоны позволяют ответить на вопрос «Как реализовать поведение в программном компоненте?»

Википедия:

" Поведенческие шаблоны проектирования определяют алгоритмы и способы реализации взаимодействия различных объектов и классов. Они обеспечивают гибкость взаимодействия между объектами. "


#3

https://designpatternsphp.readthedocs.io/ru/latest/Behavioral/README.html

http://cpp-reference.ru/patterns/behavioral-patterns/