본문 바로가기
📝 회고/✅ 22년 회고

[주간 회고] 22.02. 3주차 ✅ 🥘

by kukim 2022. 2. 20.

일기 형태로 작성되었습니다.

 

월,  화요일

사다리 게임을 구현을 하며 Git 브랜치 관리와 rebase, merge에 조금 익숙해졌다. 

자세한 회고 : 22.02.14~15 - 좋은 코드와 Git

수, 목요일

코드 리뷰에 대한 적용과 계층형 테스트 코드를 연습해보았다. 테스트 코드는이종립님의 글 을 참고하여 테스트 코드 작성을 Given-When-Then과 비슷한 Describe-Context-It 으로 테스트를 자세히 설명했다.  또한 private 메서드 테스트는 해야할까?에 대해 궁금하여 페이스북 javawocky 박성철님의 글을 보고 요약 정리했다.

글 작성 : private 메서드도 테스트를 해야 할까? (private 메서드 테스트 하고 싶을 때...) ✅ 👃

자세한 회고 : 22.02.16~17 - 행동을 설명하는 테스트 코드(BDD) 적용하기!, 개발에 정답은 없다. 그래서 ~?

금요일

사다리 게임의 마지막 단계 Step5(코드링크)를 구현했다. 소스코드를 나누었고 안에서 사용하는 데이터는 dto로 정하였다. 클래스 내 메서드 배치순서도 고민했다. 외부 공개된 public 메서드를 맨 위 순서로 두고 private를 아래에 모아놓아야 하는 걸까 고민했지만 public 메서드 안에서 사용되는 private 메서드는 public 바로 아래 있어야 찾기도 쉽다는 것을 알았다. 또한 private 메서드가 여러 public 메서드에서 사용되어 private 메서드 위치가 애매하다면 설계를 고려해봐얄 신호일 수 있다는 것도 알게 되었다.

토요일

제리, 반스, 나단을 만나 모각코를 했다. 제리와 각자 구현했던 사다리 게임의 객체의 책임 범위부터 일급컬렉션 적용 여부에 대해 토론할 수 있었다.

일요일

로치에게 사다리게임 Step4에 대한 코드 리뷰(링크)를 받았다. 요약하면 변수명과 메소드 네이밍을 더 신경써야겠다. 매직넘버도 좋지만 상수로 추출하여 의미를 주자. 현재 사용되고 있는 List<>를 일급 컬렉션 적용 여부에 대해 고민할 수 있었다. 현재 로직은 Ladder 객체 내부에 List<Line> 형태로 가지고 있는 데이터를 직접 수정하고 있다. 이러한 이유는 Line 생성의 책임 여부를 Line 스스로 생성할 때 만드는 것이 아닌 Ladder에 책임을 주었기 때문이다. 다시 말해 클라이언트가 Ladder의 List<Line>의 Line안의 사다리를 직접 그릴 수 있는 메소드를 두고자 했기 때문이다. 하지만 문제는 Ladder의 책임이 커지고 List<Line>이 불변하지 않다는 문제가 있었다. 로치의 의견대로 일급 컬렉션을 공부하고 내일부터 시작하는 새로운 프로젝트에서 적용해봐야겠다.

 

주말 요리 🥘 🦑🦐

처음으로 빠에야를 만들었다.  바닥에 누룽지까지 성공적이었다. 다음에는 쌀량을 줄이고 홍합이나 야채를 추가해야겠다

 

댓글