Struct는 데이터 묶음, Enum은 선택지를 담당한다

Struct 안에 Enum 필드를 두면 한 항목의 값과 상태를 같은 모델 안에서 관리할 수 있다.

Struct가 담당

필드 묶음Name, Damage, Icon, Type
전달 단위함수 입력, DataTable Row, SaveGame 값
배열 요소인벤토리, 퀘스트 목록

Enum이 담당

상태 이름Weapon, Potion, QuestItem
분기 기준Switch on ItemType
허용 목록문자열 오타를 제거
검수의미
모델링 순서먼저 필드를 묶고, 반복되는 분기 값만 Enum으로 뺀다.
검수Struct는 “무엇을 담는가”, Enum은 “어느 경우인가”로 읽혀야 한다.