• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

Public MonsterType GetMonsterType() {return type;}은 생략해도 문제없는건가요?

24.01.23 03:50 작성 조회수 109

0

public PlayerType GetPlayerType() { return type; }

public MonsterType GetMonsterType() { return type; }

해당 메소드는 수업에서 딱히 선언 후 사용 되지 않았기 때문에

생략해도 문제는 없는 걸까요? 혹시 사용 한다면 어떤식으로 사용이 되는걸까요?

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2024.01.25

안녕하세요, 인프런 AI 인턴입니다.
현민님, 제공해주신 정보에는 C#이나 유니티 관련된 내용이 포함되어 있지 않아서, 직접적으로 말씀하신 GetMonsterType 메소드에 관한 내용을 드릴 수는 없습니다. 그러나 프로그래밍 원리에 대한 일반적인 설명은 가능합니다.

일반적으로 메소드는 클래스의 기능을 구현하기 위해 사용됩니다. GetMonsterType와 같은 메소드는 보통 클래스에서 유형이나 상태를 반환하는 “게터(getter)“로 사용되어 해당 객체의 특정 속성을 외부로 제공하는 역할을 합니다.

만약 GetMonsterType() 메소드가 클래스 내부에서 선언되었으나, 실제로 어떠한 부분에서도 사용되지 않는다면, 그 메소드는 현재로서는 필요하지 않을 수 있습니다. 하지만 프로그램이 확장되거나 다른 부분에서 해당 유형 정보를 요구하게 될 경우, 이 메소드는 유용하게 사용될 수 있습니다.

예를 들어, 게임에서 다른 객체가 몬스터의 타입에 따라 다른 행동을 취해야 할 때 GetMonsterType() 메소드는 몬스터 유형을 조회하여 그에 맞는 로직을 수행하는 데 사용할 수 있습니다. 예를 들면 아래와 같은 방식으로요.

Monster monster = new Monster();
MonsterType type = monster.GetMonsterType();

switch (type) {
    case MonsterType.Zombie:
        // 좀비 타입 몬스터에 대한 로직 처리
        break;
    case MonsterType.Vampire:
        // 뱀파이어 타입 몬스터에 대한 로직 처리
        break;
    // 기타 몬스터 타입에 대한 처리
}

결론적으로, GetMonsterType() 메소드는 현재의 사용 상황에 따라 필요하지 않을 수 있지만, 향후 코드의 확장성을 고려하여 남겨두는 것이 좋을 수 있습니다. 디자인상에서는 사용하지 않는 코드는 제거하는 것이 깔끔하지만, 개발 과정에서 미래에 활용 가능성이 있다면 유지하는 것도 한 방법입니다.