Цепочка обязанностей

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
(перенаправлено с «Chain of Responsibility»)
Цепочка обязанностей
Chain of responsibility
Chain of responsibility.png
Тип поведенческий
Назначение для организации в системе уровней ответственности
Родственные шаблоны Компоновщик
Описан в Design Patterns Да

Цепочка обязанностей (англ. Chain of responsibility) — поведенческий шаблон проектирования, предназначенный для организации в системе уровней ответственности.

Применение

Шаблон рекомендован для использования в условиях:

  • в разрабатываемой системе имеется группа объектов, которые могут обрабатывать сообщения определенного типа;
  • все сообщения должны быть обработаны хотя бы одним объектом системы;
  • сообщения в системе обрабатываются по схеме «обработай сам либо перешли другому», то есть одни сообщения обрабатываются на том уровне, где они получены, а другие пересылаются объектам иного уровня.

Примеры

Пример на Swift

Пример на Delphi

Пример на PHP 5

Пример на Java

Пример на C#

Пример на C++

Пример на Python

Ссылки

Примечания