Ce este un lanț de responsabilitate?

Lanțul de responsabilitate (CoR) implică procesul de indicare a activităților și responsabilităților fiecărei entități în modelul de proiectare orientat obiect. Există două elemente de bază într-un design orientat obiect; obiecte de comandă și obiecte de procesare. Obiectele de comandă generează comenzile către obiectele de procesare, iar obiectele de procesare aleg dintre comenzile pe care le pot gestiona și le transmit restul celorlalți din lanț. Acesta este principiul de bază în proiectarea orientată pe obiect și există mult mai multă flexibilitate în proiectare, cum ar fi noua incintă a obiectelor în orice locație din modelul de proiectare al lanțului de responsabilitate.

Avantajul din spatele designului orientat pe obiect este că comunicarea nu se limitează la emițător și receptor, deoarece există multe obiecte acolo pentru a gestiona comanda expeditorului. Există un lanț de diferite obiecte care se aliniază pentru a gestiona comenzile, iar dacă unul nu se poate descurca, îl poate transmite celuilalt din lanț. Lanțul de responsabilitate continuă să continue până când unul dintre obiecte acceptă comanda.

Lanțul de responsabilitate trebuie să fie mai flexibil și să sprijine adăugarea de noi operatori în lanț. Deoarece fiecare handler nu este capabil să facă fiecare sarcină, trebuie să existe un grup de handler care poate lucra colectiv. Ar putea exista unele dezavantaje ale lanțului de responsabilitate, deoarece unele dintre comenzi rămân nerezolvate, chiar și la sfârșitul lanțului. Pentru a rezolva această problemă, o soluție este implementarea tuturor gestionarilor pentru toate cererile posibile.

Ar putea exista unele probleme legate de verigile rupte din sistemul lanțului de responsabilitate. Dacă programatorul uită să conecteze comenzile, atunci cererea se poate pierde. Reprezentarea cererii este semnificativă deoarece este utilizată în toate componentele lanțului de responsabilitate. Un alt defect care ar putea fi în proiectarea CoR este că, din cauza unor probleme în manipulatorul de beton, unele solicitări pot ajunge total neabordate la sfârșitul lanțului. Dar, per total, lanțul de responsabilitate este un sistem bun de implementat dacă a fost proiectat cu atenție, luând în considerare toate aspectele conexe.