코드 리뷰
코드 리뷰
다른 사람이 작성한 코드를 지적하는 것이 아니라, 본인이 깨닫는 것에 중점을 두는 것
어차피 다른 사람이 작성한 코드를 한순간에 이해하기란 어렵다.
그렇기 때문에 지적이라기보단 "여기는 왜 이렇게 작성되어 있나요?" 라고 질문하는 형식을 갖춤으로써 본인이 학습할 수 있다.
개발자는 그렇게 성장하기 때문에 리뷰는 매우 중요한 활동!
리뷰가 테스트보다 더 효율적인 버그 발견 방법이 될 수 있다.
버그가 생기지 않는 구조가 아니라, 생기더라도 곧바로 발견할 수 있는 구조로 만드는 것이 중요하다.
페어 프로그래밍
"기동 대상인 모든 소스 코드는 두 사람의 개발자가 한 대의 머신에서 작성한다. 물론 하나의 키보드와 하나의 마우스만 사용한다" - 켄트 백
생산성뿐만 아니라 품질 향상에도 기여
복잡한 제품의 경우 개발 효율은 물론, 품질 향상을 기대할 수 있으므로 반드시 시도해봐야 한다!
두 사람이 한 가지 일을 하는 만큼 단편적으로 생각하면 비용이 두 배로 늘어나는 기법이지만, 실행하는 방법에 따라 그 비용 부담을 크게 뛰어넘을 수 있는 기술
켄트 백은 다음과 같은 조건이 있다면 사이가 좋지 않은 동료 사이에서의 페어 프로그래밍이라고 해도 그 효과는 절대적이라고 기술한다.
코딩 규약이 있으므로 불필요한 논의가 사라짐
모든 사람이 재충전되어 있고 휴식 시간이 충분하므로 불필요한 논의가 줄어듬
페어로 함께 테스트를 작성하고, 구현에 들어가기 전에 서로 이해한 내용을 조율할 기회가 있다.
페어는 네이밍이나 기본 설계를 결정하는 메타포를 가진다.
메타포란 어떤 개념을 이해하는 데 도움이 되는 상징적 표현을 의미
페어는 단순한 설계를 수행하므로, 현재의 진행 상황을 이해한다.
페어 프로그래밍 가이드라인
초급
쉬움
YES
어려움
YES
중급
쉬움
NO
어려움
YES
상급
쉬움
NO
어려움
NO
Last updated