[2021년 정보시스템감리사][소프트웨어공학] 31번
31. 다음 클래스 다이어그램이 나타내는 디자인 패턴으로 가장 적절한 것은?
① bridge 패턴
② decorator 패턴
③ flyweight 패턴
④ proxy 패턴
[해설]
▣ Decorator 패턴
- 객체의 타입과 호출 가능한 메소드를 그대로 유지하면서 객체에 새로운 책임을 추가할 때 사용
- 탈부착 가능한 책임을 정의할 때 사용
- 상속을 통해 서브클래스를 계속 만드는 방법이 비효율적일 때 사용(특히 조합되는 경우의 수가 많을 때)
▣ 사용 사례
- 커피(component)와 첨가물(Decorator) 조합 구현
- java.io 패키지 : InputStream(component), FileInputStream/ByteArrayInputStream(decorator) 조합 구현


댓글
댓글 쓰기