" 코드를 작성하는 것보다 읽는 것이 더 어렵습니다." — 조엘 스폴 스키
"포포몬쓰보다 코드의 가독성이 중요하다."
🚥 철학today is reviewer 🍀😃 리뷰 대상🙆♂️ 규칙코딩 컨벤션🙌 PR Template💌Comment Template리뷰 프로세스📌 커밋 메시지 컨벤션📍 리뷰 방식 👣 참고 링크규칙 참고 리뷰 대상 참고철학 참고리뷰 방식 참고
멘토님 안건
- “멱살”잡을라면 완전 결판 내버리기 아니면 금지
- 지식 노예 만들거 아니면 금지
🚥 철학
코드리뷰는 단순히 버그를 사전에 발견하거나 문제점을 찾는 목적을 넘어서전체적인 조직의 역량을 강화하는 중요한 역할
을 한다. 그럼에도 코드리뷰의 가장 중요한 점 한 가지를 뽑는다면 ‘책임자를 추궁하지 않는 문화’의 정착한다.
- 서로를 존중하며 코드리뷰 해요!
today is reviewer 🍀
😃 리뷰 대상
이건 꼭 리뷰해요!
- indent level은 최대 3 (줄일수록 좋다.)
- 코드 중복!
- 불변 객체! (스코프 범위 줄여!! - side effect)
- Naming
🙆♂️ 규칙
“Any fool can make a rule And any fool will mind it.”
― Henry David Thoreau
- 코드 리뷰는 2일간 진행한다.
- 코드 리뷰
코멘트 달게 없다면 approve
만을 누른다.
- 코드 리뷰는 일단 한분씩
공정하게 배분
하고 모두 끝나면 변경사항에 대해서 다시한번 순회한다.
코딩 컨벤션
네이버 hack day
🙌 PR Template
✅ 작업 단위_(체크박스로 체크)
✅ PR 포인트_(고민했던 부분 포함)
✅ 요구사항_(링크 남기기)
💌Comment Template
✅ 피드백 반영사항
.png?table=block&id=eb790347-61de-405e-b629-9704be7f06a6&cache=v2)
리뷰 프로세스
- PR Description 에 자세히 작성한다.
- 미션 중 의문이 생긴점
- 중점적으로 봐야 하는 점
- 리뷰어에게 알려주어야 하는 점
- PR Description은 자주 업데이트 한다.
- 리뷰 반영후에 Description은 수정 될 수 있다.
- 리뷰어는 리뷰 결과를 항상 지정하고, 비동기 리액션 전달하기
- 리뷰어가 PR Approve 해주기!!
- 혹은 PR Change requested 해주기!!
📌 커밋 메시지 컨벤션
feat : 새로운 기능 추가
fix : 버그 수정(핵심 비즈니스 로직)
refactor : 코드 구조 변경 및, 네이밍 변경 포함 - (삭제 파일 포함)
style : 마감 처리 , 컨벤션
setting : dependency 설정
test : ${xxxx} 테스트
docs : readme 기능 리스트 추가
- 브랜치는 기능의 단위가 되고, 커밋은 기능을 구현하는 과정 중 작업들의 단위가 된다.
- 커밋 메시지는 명사로 끝내기
예시
📍 리뷰 방식
- 매운 맛이더라도 최대한 기분 상하지 않게 코멘트를 남긴다.
- 리뷰에 해당하는 부분에 대해 자세히 가리킨다.
- 캡쳐 이미지 활용
- 링크 활용
- 코드 라인
- 코드 블럭 예시
- 이모지를 많이 활용한다.
- 의문이 생기는 부분이 있다면 PR 이외에서 스크럼 시간에도 같이 얘기한다.
- 해결 방법이 아닌 생각을 유도하게 하자(가능한 정답이 아닌 힌트로?)
- 힌트 : 예시를 던져준다 (~한 경우의 코드 일 때 발생할 수 있는
bug, side effect, 변경 파급력
... 등)
- 효과적인 코드리뷰를 위한 리뷰어의 자세