Analysis problems
순서대로 개선 이유에 대해 내용 정리
MyStatus
MyStatus는 DBManager에서 참조하고 있고
DTO.cs 파일에 정의되어 있는 클래스
본래 DTO의 정의대로 쓰고 있지도 않고 파일 이름과 클래스 이름이 매칭되지도 않고 있음
MyStatus는 singleton이 아님에도 불구하고 전역 참조처럼 사용하고 있으며
모두 public field와 public method로만 구성되어 있음
주로 DBManager.Instance.MyStatus와 같은 방식으로 참조하고 있는데
MyStatus 부터 개선 필요하다고 판단
PlayerPrefs?
key-value 형태로 값을 저장하고 불러오는데 유용하지만
static method를 호출하고 불러오는데 사용하는 key 값에 대한 관리를 런타임에 할 수 없는 문제로 제거하는 게 좋음
값을 저장하고 불러오는 로직 처리는 객체를 통해 진행하고
객체가 file/database/rest api 등 다양한 방법으로 저장하고 불러올 수 있도록 다형성을 추구할 수 있도록 해야 함.
여기서는 파일로 관리하는 방법을 채택
Analysis problems
순서대로 개선 이유에 대해 내용 정리
MyStatus
MyStatus는 DBManager에서 참조하고 있고
DTO.cs 파일에 정의되어 있는 클래스
본래 DTO의 정의대로 쓰고 있지도 않고 파일 이름과 클래스 이름이 매칭되지도 않고 있음
MyStatus는 singleton이 아님에도 불구하고 전역 참조처럼 사용하고 있으며
모두 public field와 public method로만 구성되어 있음
주로 DBManager.Instance.MyStatus와 같은 방식으로 참조하고 있는데
MyStatus 부터 개선 필요하다고 판단
PlayerPrefs?
key-value 형태로 값을 저장하고 불러오는데 유용하지만
static method를 호출하고 불러오는데 사용하는 key 값에 대한 관리를 런타임에 할 수 없는 문제로 제거하는 게 좋음
값을 저장하고 불러오는 로직 처리는 객체를 통해 진행하고
객체가 file/database/rest api 등 다양한 방법으로 저장하고 불러올 수 있도록 다형성을 추구할 수 있도록 해야 함.
여기서는 파일로 관리하는 방법을 채택