
이름에서 유추할 수 있듯이, 데코레이터 패턴은 특정 객체에 추가적인 기능을 덧붙여서 꾸며주는 기능입니다. 데코레이터 패턴을 사용하면 유연하면서 깔끔한 구조로 하나의 추상적인 동작에 대한 구체 기능들을 조합할 수 있습니다. 저는 디자인 패턴들의 정의를 볼 때 다이어그램과 글로 된 정의들을 보면 이해가 잘 안 가는 경우가 많았습니다. 따라서 정의를 보기전에 먼저 예제를 통해서 데코레이터 패턴이 무엇이고 어떤 특징을 가지고 있는지에 대해 알아보겠습니다. 단순 구현하기 특정 기능을 수행하던 중 에러가 발생했을 때 에러를 기록하는 ErrorLogger 객체가 있습니다. 이 객체는 에러가 발생하면 에러를 저장하여 나중에 꺼내서 확인해 볼 수 있도록 하는 역할을 하고 있습니다. class ErrorLogger { f..