2025.02.05 (수)

윤혜진·2025년 2월 5일
0

TIL

목록 보기
19/38

📍오늘의 학습 키워드

  • 텍스트 RPG 마무리
    • 버그 잡기
    • 편의성/뷰 개선
    • 코드에 주석 달기
    • 필요없는 변수, 메서드, using 삭제
  • 팀내 코드 리뷰

📍학습 내용

  • 버그 잡기

    • HP가 0이 되었는데 레벨업을 해서 죽지 않음
      • 해결 방법: Hp가 0 이하로 떨어지면 Hp 프로퍼티에서 isDie라는 bool 변수를 true로 만들어주게 했다. 그리고 true일 때는 플레이어의 기절 메서드를 실행하고, false일 때만 경험치를 증가시키도록 만들었다.
      • 요약: 플레이어가 죽지 않았을 때만 경험치가 증가시키도록 만들었다.
    • MaxExp가 내가 의도한 것보다 하나 작게 출력되고 있음
      • 원인: 레벨업 메서드가 스탯 조정 말고도 메세지 출력도 함께 해주고 있는데, 이 메서드가 MaxExp++ 보다 먼저 실행되기 때문에 전 레벨의 필요 경험치를 출력해주고 있었던 것.
        public int Exp
        {
            get { return exp; }
            set
            {
                exp = value;
                if (exp >= MaxExp)
                {
                    LevelUp();
                    MaxExp++;
                }
            }
        }
      • 해결: 레벨업 메서드와 MaxExp의 증가식의 위치를 바꿔주었다.
  • 필요 없는 변수, 메서드, using 삭제

    • 저번 팀 프로젝트 피드백 때, 안 쓰는 using문들이나 생명 주기 함수들은 삭제하는 습관을 들이는 편이 좋다는 말을 들었으므로 이번에는 신경 쓰기로 했다.
  • 코드 리뷰
    • input을 받아 처리하는 방식을 if문 말고 switch문으로 사용하면 더 좋을 것 같다는 코멘트를 받음
    • ItemManager에 뷰와 로직이 혼재되어 있어 그 부분을 아이템뷰와 아이템매니저로 나눠주면 더 좋을 것 같다는 코멘트를 받음.
    • 자주 사용하게 되는 메서드는 Utill로 따로 묶어 static을 붙여주면 좋다!
    • define 클래스를 만들어 변하지 않는 값들의 데이터를 관리해 주는 방식도 굉장히 좋아 보였음! 나중에 꼭 적용해보고 싶다.

📍회고 및 반성

  • 수정이 용이한 코딩이 얼마나 중요한지 다른 사람의 코드를 보면서 깨달았다.
  • 다음에는 그런 부분도 신경 써서 코딩해야겠다는 생각이 들었음.

0개의 댓글

관련 채용 정보