Весняний РОЗПРОДАЖ
Ланцюжок обов'язків

Ланцюжок обов'язків на PHP

Ланцюжок обов’язків — це поведінковий патерн, що дозволяє передавати запит ланцюжком потенційних обробників до тих пір, поки один з них не обробить його.

Позбавляє від жорсткої прив’язки відправника запиту до одержувача, дозволяючи динамічно вибудовувати ланцюг з різних обробників.

Складність:

Популярність:

Застосування: Патерн зустрічається в PHP не так вже й часто, бо для його застосування потрібно, щоб програма мала ланцюги об’єктів. Мабуть, найвідомішим прикладом використання цього патерна в PHP є концепція HTTP Request Middleware, описана в PSR-15. Це обробники запитів, які програма запускає перед тим, як виконати основний обробник запиту. Якщо їх зібрати в один ланцюг (що найчастіше і відбувається в реальних додатках), то вийде конструкція, дуже схожа з патерном Ланцюжок Обов’язків.

Ознаки застосування патерна: Ланцюжок обов’язків можна визначити за списками обробників або перевірок, через які пропускаються запити. Особливо, якщо порядок проходження обробників є важливим.

Ланцюжок обов'язків іншими мовами програмування

Ланцюжок обов'язків на C# Ланцюжок обов'язків на C++ Ланцюжок обов'язків на Go Ланцюжок обов'язків на Java Ланцюжок обов'язків на Python Ланцюжок обов'язків на Ruby Ланцюжок обов'язків на Rust Ланцюжок обов'язків на Swift Ланцюжок обов'язків на TypeScript