3단계: 의심 지점 특정
• 상태를 읽는 시점과 변경하는 시점이 분리되어 있다면, 그사이에 다른 실행 흐름이 끼어들 수 있는가?
• 에러가 발생했을때 어떻게 처리되는가?
• 타임아웃이나 재시도 로직이 필요한 구간이 있는가?
4단계: 커밋 전 최종 확인
• 이 코드를 다른 사람에게 설명할 수 있는가?
• 문제가 발생했을 때 어디를 먼저 확인해야 하는지 알고 있는가?
다음 두 항목만은 확실히 대답할 수 있어야 합니다. 이 항목에 대답할 수 없으면 커밋을 멈추고 코드를 다시 들여다봐야 합니다.
“이 코드가 무엇을 하려는지 한 문장으로 설명할 수 있는가?”
“이 코드가 해결하려는 문제가 무엇인지 말할 수 있는가?”