주제
코드 리뷰 잘하는 방법
목차
- 팀원들이 봤으면 하는 항목
- 코드 리뷰의 목적
- 왜 코드 리뷰가 어려운가?
- 효율적인 PR 방법
- 피드백 방법
- 코드 리뷰를 하는 아주 재밌는 방법
- 코드 리뷰 문화 정착의 어려움 / 극복방법
- 코드 리뷰 효과
- 코드 리뷰를 잘 하기 위해 필요한 기술들
- FAQ
내용
- 팀원들이 봤으면 하는 항목
- 병연님의 PR 템플릿 논제가 여기에 해당하지 않았을까 싶네요. 👀
- ← [효율적인 PR 방법]
- 🤔 PR Point나 궁금한 점을 이걸로 활용하면 어떨까요?
- ← [효율적인 리뷰 방법]
- 🤔 이것도 리뷰 문화에 추가하면 어떨가요?
- ← [효율적인 리뷰 방법]
- 👀 이거는 필요 없을거 같은데? 싶은 내용이네요.
- , ← [피드백 방법]
- 🤔 이것도 리뷰 문화에 추가하면 어떨가요?
코드 리뷰의 목적
- 주목적: 품질 문제 검수(버그, 장애)
- 더 나은 코드 품질: 아키텍처 속성 개선을 위한 코드 개선(향후 변경 비용 개선)
- 학습 및 지식 전달: 코드, 해결책 등과 같은 관련된 지식 공유 기여
- 공유(주고 받는 학습)를 통한 역량 증대 및 성장
- 동기 부여
→ 리뷰어들도
어떻게 소통해야 저 사람이 더 잘 받아들이는구나
와 같은 소프트 스킬 지식 Get! (친절한 공감능력, 가르치는 방법 등)→ 잘하는 사람 걸 보면
더 잘해야 겠군
하는 동기 부여가 된다.- 상호 책임감 증대
- 집단 코드 오너십 및 결속 증대
- 내가 하고 있는 일에 관심을 가져주는 것
- 팀에서 일어나는 일 공유. 내 동료는 무엇을 하나? 팀웍
- 설계 개선 제안
- 개발 문화 개선
왜 코드 리뷰가 어려운가?
효율적인 PR 방법
- 지루한 작업은 컴퓨터로 처리
- 스타일 가이드를 통해 스타일 논쟁을 해소 → 좋은거 하나 골라서 통일 해라..
- PR을 올릴 때 주석 달기

👀 PR 포인트나 궁금한 점을 이렇게 작성 할 수 있을듯?
- 모두를 포함하라
- 의미있는 커밋으로 분리
- 코드를 읽는 것은 인지적 부담이 되는 고수준의 집중이 요구되는 작업
- 컴퓨터가 할 수 있는 일에 이런 노력을 낭비하지 말라
- Formatting Tool
- 공백, 들여쓰기 오류 등
- 별도의 커밋/PR로 분리.
효율적인 리뷰 방법
- 코드 리뷰를 높은 우선순위로
- 저자는 리뷰 종료될 때까지 대기(Blocked)함
- 빨리 리뷰를 종료해주는 것이 우리 팀원들에게 도움이 된다.
- 리뷰를 바로 시작하면 선순환됨
- 바로 시작해서 빨리 끝내면 → 언제, 어떻게 올려야 더 빨리 리뷰 할수 있구나? Get!
- 이상적으로는 수분 내로... 👀
왓더..헬
- 리뷰 라운드의 최대 시간은 하루
- 우선순위 높은 업무로 1일 내 불가하면 다른 리뷰어 지정
- 월 1회 이상 재지정을 해야 한다면 속도를 줄여서 건강한 개발 관습을 유지할 수 있어야 함.

- “If it hurts, do it more often”
→ 리뷰가 힘듦? 어려움? 그럼 그게 없어질때 까지 하삼.
- 저 30분 30분 동안 PR 리뷰를 할 수있게 하기 위해서는 변경이 적도록 노력할 것이다.
고수준으로 시작, 저수준으로 내려가라
- 너무 많으면 ‘내가 이렇게 잘못했다고?`라고 느낄 수 있으니 적당히...
예제 코드 제공에 관대해라
- 별로 친하지 않은 사람에게 비싼 선물 주면 부담 스럽잖아유?
→ 너무 긴 예제, 많은 예제들은 자제하자
리뷰의 범위를 존중하라
효율적인 리뷰 방법

- 처음하는 사람들이 실수 하는것
- 리뷰 범위를 벗어난 것은 내비두자. (위의 예제의 9를 eight로 쓴것 마냥)
- 두 번째꺼는 안의 구문이 사라졌기 때문에 메서드명의 변경이 필요하다.
→ 요런건 또 넣어라!
해야 될것과 안해야 될것을 구분하라!
태그를 활용
효율적인 리뷰 방법

- 우리들끼리 정해서, 중요치 않은 키워드를 작성해서 무시할 수 있도록 할수도 있다.
- nitpicking? → (미구)사소한 것을 문제시하는(함), 남의 흠을 잡아내는(냄)
- 그런데 이런 것들도 코드리뷰 통해서 다 고친다고 함..
결함이 아니어도 리뷰어는 항상 더 개선할 수 있는 의견을 자유롭게 남길 수 있어야 한다!
→ 교육적인 목적, 지속적으로 기술을 연마하는 것을 돕는 목적
한두 등급만 코드 레벨을 올리는 것을 목표로
- A+가 D등급을 보고 ‘왜 A+로 못했냐!?’ 라고 하는 것보다 한단계 올릴것으로 해줘야 한다.
피드백 방법
코드 리뷰 문화 정착의 어려움 / 극복방법
코드 리뷰 효과

코드 리뷰를 잘 하기 위해 필요한 기술들
FAQ



