BEHAVIORAL
Chain of Responsibility
Evitare di accoppiare il mittente di una richiesta al suo ricevitore dando a più oggetti la possibilità di gestire la richiesta. Concatenare gli oggetti riceventi e passare la richiesta lungo la catena finché un oggetto la gestisce.
Esempi di Codice
Chain of Responsibility per Support Tickets
Sistema di supporto con livelli (Level 1, Level 2, Manager).
JAVASCRIPT
Loading...
Esempi nel Mondo Reale
Middleware in Express.js
Event bubbling in DOM
Exception handling (try-catch chain)
Logging frameworks (log levels)
Authentication/Authorization pipelines
Quando Usarlo
Quando più oggetti possono gestire una richiesta
Quando non sai quale handler gestirà la richiesta
Quando vuoi disaccoppiare mittente e ricevitore
Quando l'insieme di handler cambia dinamicamente
Quando NON Usarlo
Quando sai esattamente chi deve gestire la richiesta
Quando ogni richiesta deve essere gestita
Quando la catena diventa troppo lunga
Pattern Correlati