이번에는 데코레이터 패턴.
처음 공부했을 때는 우와, 신박하다! 라고 생각했는데, 음.. 꾸며주기 위해 많은 생성자가 불린다는 점이 조금 거슬린다.. 디자인 패턴 자체가 성능이 우선시 된다기보단 추상화와 의존성에 치중하는 것이긴 하지만.
- 객체에 추가적으로 무언가를 ‘동적으로’ 첨가한다.
장점 1. 서브클래스만 추가하면 런타임시 쉽게 객체에 추가할 수 있으므로 유연하다.
장점 2. 데코레이터를 추가하는 부분이 꽤 직관적이라서 가독성이 좋은 것 같다.
자 그럼 예제.