C++/디자인패턴

[C++]구조 패턴/데코레이터 패턴

programmer-faust 2025. 7. 29. 21:07
  1. 순서
    1. 데코레이터 패턴이란?
    2. 데코레이터 패턴의 장점과 단점
    3. 데코레이터 패턴 사용시 고려사항
    4. 간단한 데코레이터 패턴 작성
  2. 데코레이터 패턴이란?
    1. 객체에 새로운 기능을 동적으로 추가하는 패턴
    2. 상속 대신 구성을 이용함
    3. 기능 확장이 필요할 때 서브클래싱 대신 사용함
    4. 데코레이터 패턴 사용의 예
      • 무기에 여러 인챈트를 조합하고 싶을 때
      • 버프/디버프를 중첩해서 적용할 때
      • 기본 기능에 옵션을 동적으로 추가/제거하 때
      • 상속으로는 조합이 폭발적으로 증가하는 경우
  3. 데코레이터 패턴의 장점과 단점
    • 장점
      • 런타임에 객체에 기능 추가 가능
      • 상속보다 유연함
    • 단점
      • 많은 클래스가 생성될 수 있음(데코레이터 체인)
      • 디버깅 어려움
  4. 데코레이터 패턴 사용시 고려사항
    • 객체 조합 순서가 중요하여 순서를 고려해야함
    • 데코레이터가 너무 많으면 관리가 어려움
  5. 간단한 데코레이터 패턴 작성
    •  

'C++ > 디자인패턴' 카테고리의 다른 글

[C++]행동 패턴/옵저버 패턴  (0) 2025.07.31
[C++]구조 패턴/퍼사드 패턴  (0) 2025.07.30
[C++]구조패턴/어댑터 패턴  (0) 2025.07.28
[C++]생성 패턴/빌더 패턴  (2) 2025.07.25
[C++]생성 패턴/팩토리 패턴  (3) 2025.07.23