답변:
내 경험상 대부분의 공식 코드 검토는 쉬우므로 스타일 검사로 진행됩니다. 보아야 할 것들에 대한 체크리스트를 제공하더라도 눈이 쉽게 글래스되기 시작합니다.
단위 테스트 검토가 더 많은 이점을 제공한다는 것을 알았습니다. 내가 함께 일한 대부분의 개발자는 실제로 단위 테스트를 올바르게 수행하는 방법을 모르고 일단 "Aha!" 나머지 코드도 개선되기 시작합니다. 힌트는 다음과 같습니다. 사용자가 무언가를 검사해야하는 경우 단위 테스트가 아니며 디버거에서 실행하기 위해 무언가를 시작하는 경우 단위 테스트가 아닙니다.
문제가 무엇인지에 따라 달라지는 경향이 있습니다. 많은 경우 그것은 단순한 고무 스탬프입니다. "문제가 무엇인지, 여기이 줄을 보라. 무엇이 잘못되고 있는지, 여기에 내가 고 쳤던 곳이있다." "그래, 그건 분명하다. 가서 확인 해봐."
그러나 더 관련있는 일이 진행될 때 일반적으로 다음과 같이 진행됩니다.
개발자가 검토 자와 함께 앉아 코드를 한 줄씩 설명하는 코드 검토를 선호합니다. 종종 개발자는 검토자가 아직 보지 못했을 수도있는 설명을하는 데 문제가있을 수 있습니다. 이것이 제가 선호하는 이유입니다. 또한 코드를 보낸 곳에서 코드를 검토하여 직접 읽고 주석을 작성하지만 주석이 더 길어지는 경향이 있습니다. 나에게 다시 설명하고 2 ~ 3 라운드 후에 우리는 함께 모여서 내가 의미하는 바를 화면에서 지적하고 개발자는 "오 그래 이제 나는 그것을 본다"고 진지한 토론이 적고 생산성이 떨어집니다. 더 많이, "너는 이것을 잘못했다."
또한 코드 검토에서 표준을 시행하는 것이 중요하지만 표준에 초점을 맞추지 않아야합니다.
그러나 코드 검토자가 만족하거나 관리자 (개발자가 아님)가 자신을 기각 할 때까지 (코드 검토 자도 잘못된 경우) 코드가 프로덕션으로 전송되지 않습니다. 이는 코드 검토자가 최종 코드를 푸시하기 전에 승인하지 않으면 부가 가치가없는 관료적 프로세스 일뿐입니다.
먼저 코딩 표준이 필요하며 이는 단순한 구문 이상의 것입니다. 사람들이 회사에서 시작할 때는 코딩을 시작하기 전에 가능한 한 회사의 지침을 배워야합니다 . 검토 과정에서 모든 종류의 위반이 발견되면 다음과 같은 가능성이 높습니다.
지침은 이해가되어야하며 위반을 찾고 가능한 한 쉽게 리팩토링 할 수있는 적절한 툴링이 있어야합니다. 항상 지침의 목표와 코드 검토를보십시오
내 마음의 목표는 코드를 가능한 한 균일하게 만들고 유지 관리 및 가독성과 관련된 문제를 찾는 것입니다. 두 번째 목표는 특정 소프트웨어를 사용하여 더 많은 사람들이 속도를 높일 수 있도록하는 것입니다.
내 마음에 지침은 예를 들어 다음과 같이 존재할 수 있습니다.
이를 통해 코드 검토는 지침에 따라 점검되는 소프트웨어와 다음으로 구성됩니다.