경험 기반 솔직한 접근
C++로 게임 시스템을 개발할 때 가장 자주 활용한 패턴은 컴포넌트 기반 설계와 옵저버 패턴입니다. 수업 프로젝트에서 캐릭터 행동을 이동, 전투, 애니메이션 컴포넌트로 분리해 독립 수정이 가능하도록 설계했습니다. 상속보다 합성을 선호하는 방향이 코드 재사용성과 유지보수성을 동시에 높인다는 것을 경험했습니다. 옵저버 패턴은 이벤트 기반 시스템 — 체력 감소 시 UI 업데이트, 사망 시 트리거 — 에 활용해 결합도를 낮췄습니다.
게임 루프 최적화를 위해 불필요한 객체 생성을 줄이고 오브젝트 풀링도 적용했습니다. 패턴은 도구이고 문제를 먼저 이해한 후 적합한 패턴을 선택하는 것이 더 중요하다고 생각합니다.