C/C++ 디자인 패턴 (9) — 데코레이터(Decorator)

데이터를 저장할 때 압축하고, 암호화하고, 바이트 수를 세는 기능을 필요에 따라 조합해 쓴다고 하자. 조합마다 서브클래스를 만들면 CompressedEncryptedCountingSink 같은 클래스가 끝없이 늘어나고, 조합 순서도 상속 구조에 고정된다. 데코레이터(Decorator)는 같은 인터페이스를…

Continue ReadingC/C++ 디자인 패턴 (9) — 데코레이터(Decorator)