[디자인패턴] 데코레이터 패턴(Decorator Pattern)이란 무엇인가?
2023. 3. 8. 15:46
Programming/Design Pattern
정의 데코레이터(Decorator)는 사전적으로 무언가를 꾸며준다는 의미를 가지고 있다. 이에 착안해 데코레이터 패턴의 사전적 정의를 살펴보면 다음과 같다. 객체에 추가 요소를 동적으로 더할 수 있도록 하는 패턴으로, 서브클래스를 만들 때보다 훨씬 유연하게 기능을 확장할 수 있다. 데코레이터 패턴은 Java I/O 에서 대표적으로 적용되고 있는 디자인 패턴이다. 사전적 정의가 실제 구현에서 어떻게 사용되는 것인지 와 닿기 힘들다. 이에 관련된 문제 상황과 해결 방법을 아래 문단에서 자세하게 알아보자. 문제 상황 우리는 샐러드 가게에서 사용할 전산 시스템을 만드는 상황을 가정해 보자. 만약 아래와 같이 샐러드 주문 표가 있다고 할 때, 각 샐러드 조합에 대한 클래스를 만드려면 어떻게 해야 할까? 만약 조합..