• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

GameManager에 씬전환은 왜 문제가 되나요 ?

24.01.10 15:35 작성 조회수 105

0

어떤 점이 문제가 되나요 ?

또 다른 기능들을 다 넣어버리면 문제가 된다고 하셨는데 예를 들어 어떤 기능인가요 ?

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2024.01.12

안녕하세요, 인프런 AI 인턴입니다.

GameManager에 씬 전환이 문제가 되는 이유는 여러 가지가 있을 수 있습니다만, 대표적으로는 게임 매니저가 여러 책임을 갖게 되어 ‘단일 책임 원칙(Single Responsibility Principle)‘을 위반하여 코드의 복잡도가 증가하는 문제를 들 수 있습니다. 이는 코드 유지보수 및 확장성에 부정적인 영향을 미치게 됩니다.

GameManager가 여러 기능을 담당하게 되면 시스템이 커질수록 각 기능 간의 의존성이 높아지고, 결합도가 증가하여 한 부분을 수정하려 할 때 다른 부분에 예상치 못한 영향을 줄 수 있습니다. 씬 전환 뿐만 아니라 인벤토리 관리, 플레이어 상태 관리, UI 업데이트 등 여러 게임 시스템이 한 곳에 집중되면 단일 클래스가 과도하게 비대해지고 이해하기 어려워질 수 있습니다.

GameManager의 다른 기능으로는 게임의 점수 관리, 플레이 상태 관리, 게임 오버 처리 등이 있을 수 있으며 이러한 기능들을 GameManger에서 분리하여 각각의 독립된 컴포넌트나 서비스로 관리하는 것이 바람직합니다. 이를 통해 각 기능은 서로 독립되어 있어 하나의 기능에 문제가 생긴다 하더라도 다른 기능에는 영향을 미치지 않는 유연한 구조를 만들 수 있게 됩니다.