[디자인 패턴] 장식자 패턴 (Decorator Pattern)
디자인 패턴- 개념
장식자 패턴(Decorator Pattern) 은 객체를 동적으로 서브클래스를 이용해 확장하는 패턴
장식자 패턴은 디자인 원칙중 하나인 OCP(Open-Closed Principle) 법칙을 준수하여, 기존의 코드를 건드리지 않고 확장하도록 합니다
- 구현
Component는 동적으로 추가할 서비스를 가질 가능성이 있는 객체들에 대한 인터페이스이고, ConcreteComponent는 추가적인 서비스가 실제로 정의도어야 할 필요가 있는 객체입니다
Decorator에 Component에 정의된 인터페이스를 만족하도록 인터페이스를 정의하여 ConcreteDecorator들을 통하여 Component에 새롭게 추가할 서비스들을 구현해 줍니다
그럼 Decorator는 자신의 Component 객체 쪽으로 요청을 전달할 때, 자신만의 추가 연산을 선택하여 수행할 수 있습니다
- 관련 패턴
적응자 패턴 (Adapter Pattern) - http://cpp11.tistory.com/57
복합체 패턴 (Composite Pattern)
전략 패턴 (Strategy Pattern)
'디자인 패턴' 카테고리의 다른 글
[디자인 패턴] 플라이급 패턴 (Flyweight Pattern) (0) | 2018.04.23 |
---|---|
[디자인 패턴] 전략 패턴 (Strategy Pattern) (0) | 2018.04.23 |
[디자인 패턴] 적응자 패턴 (Adapter Pattern) (0) | 2018.03.26 |
[디자인 패턴] 퍼사드 패턴 (Facade Pattern) (0) | 2018.03.26 |
[디자인 패턴] 중재자 패턴 (Mediator Pattern) (0) | 2018.03.26 |