내가 작성한 코드를 다른 사람에게 설명하기 위해 다시 들여다 보고 있다. 꽤 유익한 경험이다. 나는 주석을 잘 달지 않는 편인데 가능하면 코드를 읽고 의미가 드러나도록 노력하기 위해서 그리고 코드에 드러난 의미를 다시 주석으로 다는 중복을 피하기 위함이다. 그런데 내 코드를 보고 무엇을 하는지는 분명히 알겠는데 왜 저렇게 하는지 도무지 이해가 안되는 코드가 있다. 한참을 살펴본 후에야 기억이 났다. 곧바로 왜 그렇게 하는지 주석을 남겼다. 내 코드를 접하는 동료가 분명히 도움이 될 것 같다.
역시 코드를 보고 왜 이렇게 변경했는지 이해가 안되는 코드가 있다. 주석도 없다. git 히스토리를 뒤져서 해당 파일이 변경된 커밋을 찾아, 커밋 메시지 그리고 함께 변경된 파일들을 보니 왜 변경했는지 이해가 된다. 커밋을 하나의 의미 단위로 분리하는 것의 효과를 실감한다.