본문 바로가기
New/CS 복습

디자인 패턴 - 컴포넌트 패턴

by onenewkong 2025. 3. 29.

컴포넌트 패턴 기반 설계

특징: 객체가 특정 기능을 직접 상속받는 것이 아니라, 여러 독립적인 컴포넌트를 조합하여 기능을 확장하는 방식

장점

  • 유연성: 객체는 여러 개의 컴포넌트를 가질 수 있으며, 필요에 따라 쉽게 추가 및 삭제 가능
  • 코드 재사용성 증가: 특정 기능을 독립적인 컴포넌트로 만들어 여러 객체에서 공유 가능
  • 런타임 동적 변경 가능: 게임 실행 중 새로운 기능을 추가하거나 제거할 수 있음

단점

  • 관리 복잡성 증가: 컴포넌트가 많아지면 객체와 컴포넌트 간의 관계를 관리하는 코드가 증가할 수 있음
  • 초기 설계 필요: 시스템을 처음부터 컴포넌트 기반으로 설계해야 효과적임

 

상속 vs 컴포넌트 패턴 비교

비교 항목 상속 컴포넌트 패턴
구조 계층 구조 기반 독립적인 모듈 조합
확장성 상속 구조에 따라 제한적 새로운 컴포넌트를 추가하여 유연하게 확장 가능
코드 재사용 부모 클래스를 공유하는 경우 코드 재사용 가능 컴포넌트를 여러 개의 객체에서 재사용 가능
런타임 동적 변경 불가능 가능
유지보수 계층이 깊어지면 유지보수 어려움 개별 컴포넌트 수정으로 유지보수 용이
다형성 활용 오버라이딩, 다형성 적용 가능 다양한 컴포넌트 조합을 통해 다형성 구현 가능

 

 

'New > CS 복습' 카테고리의 다른 글

데이터 직렬화 & 역직렬화  (1) 2025.03.29