최고의 코드 검토 결과 얻기

wonsama·2023년 8월 11일
0

code-review

목록 보기
1/1

출처 : https://hackernoon.com/getting-the-best-out-of-code-reviews?source=rss

좋은 코드 리뷰 는 예술입니다. 리뷰어는 조각가와 같으며 원시 코드 블록을 깎아내어 그 아래에 있는 걸작을 드러냅니다. 그러나 그것은 또한 과학입니다. 체계적인 접근 방식, 코드의 목적에 대한 명확한 이해, 세부 사항에 대한 안목이 필요합니다.

그렇다면 어떻게 예술과 과학의 섬세한 균형을 이룰 수 있을까요?

  1. 학습: 코드 리뷰는 서로에게서 배울 수 있는 기회입니다. 피드백에 열려 있고 지식을 공유할 준비가 되어 있어야 합니다.
  1. 품질: 코드 품질을 유지하는 것이 최우선 순위입니다. 버그, 스타일 불일치 및 잠재적 개선 사항을 찾으십시오.
  1. 통합: 코드 리뷰는 팀 스포츠입니다. 팀원을 지원하고 건설하며 존중하십시오.

부정적 코드 리뷰를 하지 않는 방법

  1. 닛피커
    코드 리뷰는 '오타 찾기' 또는 '누락된 세미콜론 찾기'를 플레이하는 것이 아닙니다.

  2. 소설가
    코드 리뷰는 간결하고 요점이 있어야 합니다.

  3. 침묵하는 유형
    질문하고, 설명하고, 참여하세요!

  4. 독재자
    코드 리뷰는 독재가 아니라 민주주의라는 것

  5. '항상 부정적인' 리뷰어
    좋은 리뷰는 단순히 버그를 지적하는 것이 아니라 학습을 촉진하고 팀 결속을 촉진하는 것입니다. 균형입니다.

코드 리뷰가 중요한 이유

  1. 버그 식별
    두 번째 눈은 종종 첫 번째 눈이 놓친 것을 포착합니다.

  2. 지식 공유
    검토는 코드베이스 변경에 대한 지식을 전파하여 한 사람이 정보 사일로가 되지 않도록 합니다.

  3. 코드 일관성
    코드가 팀의 코딩 표준 및 관행과 일치하는지 확인합니다. 훌륭한 코드는 모두 한 사람이 작성한 것처럼 보입니다 .

  4. 팀 결속력
    믿거나 말거나 리뷰는 협업과 상호 학습을 통해 개발자를 더 가깝게 만드는 결속력이 될 수 있습니다.

리뷰 기술 숙달

  1. 컨텍스트 이해
    코드가 해결하려는 문제를 이해했는지 확인합니다. 경우에 따라 문제는 코드 자체가 아니라 요구 사항에 대한 정렬에 있습니다.

  2. 성능 문제 확인
    성능을 방해할 수 있는 잠재적인 병목 현상이나 비효율적인 루프를 검토합니다.

  3. 보안 조사
    노출된 민감한 데이터 또는 확인되지 않은 사용자 입력과 같은 잠재적인 보안 취약점을 주시하십시오.

  4. 코드 모듈성과 깔끔함
    코드는 그냥 작동해서는 안 됩니다. 향후 유지 관리를 위해 깨끗하고 모듈식이어야 합니다.

협업 검토 문화 조성

  1. 피드백 프레이밍
    항상 건설적으로 피드백을 프레이밍합니다. "이건 통하지 않을거야"라고 말하는 대신 "이 접근 방식을 더 최적화할 수 있을까?"라고 생각하십시오. 그 소크라테스 남자는 뭔가에 있었다.

  2. 질문 장려
    검토 중에 질문하는 것을 환영하고 장려하는 문화를 조성합니다.

  3. 인식 및 감사
    좋은 코드와 혁신적인 솔루션을 인정합니다. 약간의 긍정적 강화는 먼 길을 간다.

  4. 비평과 공감의 균형
    모든 코드 조각 뒤에는 노력이 있음을 이해합니다. 비판보다는 개선을 강조하면서 피드백을 존중하십시오.

도구 및 모범 사례

  1. 버전 제어 플랫폼
    GitHub 및 Bitbucket과 같은 도구는 통합 코드 검토 도구를 제공하여 변경 사항에 대해 더 쉽게 설명하고 논의하고 추적할 수 있도록 합니다.

  2. 자동화된 테스트
    검토에 들어가기 전에 자동화된 테스트는 눈에 띄는 문제를 식별하는 데 도움이 될 수 있습니다. Jenkins 또는 Travis CI와 같은 도구가 이와 관련하여 도움이 될 수 있습니다.

  3. 린터 및 포맷터
    ESLint 또는 Prettier와 같은 도구는 스타일 불일치를 자동으로 포착하고 수정하여 검토에서 수동 오버헤드를 줄입니다.

  4. 자동화된 품질 및 보안 분석
    SonarQube와 같은 도구는 순환 및 인지 복잡성 영역을 강조할 수 있습니다. 그 외에도 피드백을 비개인화하고 모든 팀 구성원의 기여가 동일한 표준을 따르도록 파이프라인을 실패하도록 구성할 수 있습니다.

1개의 댓글

comment-user-thumbnail
2023년 8월 11일

유익한 글이었습니다.

답글 달기