책임 연쇄 패턴(Chain of Responsibility Pattern)은 클라이언트의 요청을 처리할 수 있는 여러 객체들을 하나의 사슬(Chain)로 연결해 두고, 자신이 처리할 수 없으면 다음 객체로 요청을 떠넘기는 행위 패턴입니다.
회사에서 결재를 올릴 때, 100만 원짜리 기안은 '팀장'이 바로 승인하지만, 1000만 원짜리 기안은 팀장이 처리할 권한이 없으므로 '본부장'에게 결재를 넘깁니다. 본부장도 안되면 '사장'에게 넘어가는 다단계 처리 구조를 `if-else` 중첩 없이 유연하게 만들 수 있습니다.
책임 연쇄 패턴은 요청을 보내는 객체와 처리하는 객체를 분리하고, 여러 객체에게 처리 기회를 제공합니다.