[우아한테크코스 6기 프리코스] 1주차 코드 리뷰 종합해보기!

✔️ 코드 리뷰의 목적이 무엇일까? 🤔

 1주차가 종료되고 코드 리뷰 쓰레드가 활성화 되었을 때, 다른 사람들로부터 피드백을 받는 일이 익숙치 않아 올릴지 말지 한참을 고민했다. 하지만 우아한테크코스 프리코스에 최선을 다해 참여하기로 결심했으니 용기를 내 올려보았다!!! 감사하게도 PR 리뷰를 달아주신 분들이 계셨고, 설렘반 긴장반의 상태로 리뷰를 꼼꼼히 읽어보았다. 당연히 리뷰를 해주신 분들의 PR에도 달려가 리뷰를 남기고 왔다.

 

 막상 코드 리뷰를 주고 받아보니 생각보다 재미있었다. 다른 분들의 고민이 고스란히 담긴 코드를 자세히 살펴보고, 다양한 방법들을 접하는 과정이 흥미로웠다. 또한, 내가 생각하지 못했던 부분들에 대해 피드백을 받을 수 있어서 코드의 부족한 부분이 무엇인지, 잘한 부분이 무엇인지 조금 더 객관적으로 바라볼 수 있었다. 단지 보기만 하는 것에서 벗어나 받은 피드백을 정리하고 다음 주차때마다 적용해보려 한다. 피드백에 대한 자세는 오로지 나의 판단에 달려있지만, 수용하는 자세가 기본이 되어야 한다고 생각한다. 더 나아가 다른 사람들에게 도움이 되는 코드 리뷰를 달 수 있도록 노력해야겠다.

 

PR 주소

 

[숫자 야구 게임] 이지현 미션 제출합니다. by Jihyun3478 · Pull Request #113 · woowacourse-precourse/java-baseba

 

github.com

 


 

✔️ 2주차에 적용할 내용

 코드 리뷰를 통해 받은 피드백과 1주차를 종료하며 "2주차에는 꼭 해봐야지!"라고 다짐했던 부분들을 종합해보았다.

 

💡 피드백

1. 변수 이름, 함수 이름, 클래스 이름에 조금 더 시간을 투자하자.

  • 문맥 중복하는 이름 자제
  • ex) NumberValidation 클래스에서 validateDuplicate() 함수를 duplicate()로 바꿀 수 있음

 

2. 출력단은 OutputView 클래스를 사용하자.

 

3. 배열 대신 Java Collection을 사용하자.

  • 1주차 때 배열을 사용했었는데 이 부분은 나의 실수인 것 같다. 2주차 때부터는 컬렉션을 사용한다.

 

4. 문자열 결합은 StringBuilder 또는 String.join() 사용하자.

  • String.join()에 대해서 공부하자.

 

5. 하나의 메소드에는 하나의 책임만 부여하자.

  • 책임을 과하게 분리하지는 않았는지
  • 책임을 과하게 부여했는지

 

6. Enum 클래스를 상수를 모아두는 역할로 바라보기보다는 객체로 바라보자.

 

7. 커밋 메시지는 상대방이 쉽게 이해할 수 있도록 작성하자.

 

💡 나의 목표 중에서

1. 도메인을 분리해보자.

 

2. 단위테스트를 구현해보자.

  • 함수를 분리하고 각 함수별로 테스트를 작성하자.

 

3. 기능 목록을 더 상세히 만들자.

  • 커밋 단위와 기능 목록 단위는 동일하다.