인프런 커뮤니티 질문&답변

유승현님의 프로필 이미지
유승현

작성한 질문수

코딩으로 학습하는 GoF의 디자인 패턴

책임 연쇄 패턴 2부 - 패턴 적용하기

Handler 순서 적용 관련

작성

·

277

0

여러 핸드러를 적용시 생성자에 계속 넣어주는 방식은 좋지 않으니

다르게 핸들러 순서를 적용하고 싶으면

어떤 클래스 HandlerStore?를 지정해두고 해당 클래스에서

내부적으로 HanderList를 필드로 갖고 있고,

추가적으로 order 필드를 갖게 한 뒤 order를 기준으로 sorting 후 하나씩 적용하도록 하면 될거 같은데요


여기서 HandlerStore를 사용하는 것이 컴포짓 패턴이라고 볼수 있을까요?

 

 

답변 1

1

백기선님의 프로필 이미지
백기선
지식공유자

안녕하세요.

핸들러 체인을 만들 때 생성자에 계속 넣어주는 방식이 불편하거나 직관적이지 않고 순서를 정하고 싶다면 핸들러 체인을 만드는 부분에 빌더 패턴을 적용해보면 어떨까요?

패턴은 목적에 따라 여러 책임을 각각의 개별 클래스로 분산하고 연쇄적인 형태로 적용한다면 책임 연쇄 패턴이라고 부를 수 있을것 같습니다.

말씀해주신 HandlerStore는 만약에 해당 타입이 Handler와 같은 타입이라면 (컴포짓에서 Component라는 공통의 인터페이스가 있던것처럼)  컴포짓 패턴으로 볼 수도 있을것 같네요.

감사합니다.

유승현님의 프로필 이미지
유승현

작성한 질문수

질문하기