티스토리 뷰
개발하다 다른 분들에게 이 코드가 왜 작동하지 않는지 질문하고 싶어질 때가 있습니다. 하지만, 주변에 다른 분들이 없다면, 다 바쁘신 거 같다면 어떻게 해야 할까요?
그런 분들을 위해 고무 오리가 필요합니다. 고무 오리가 아니어도 괜찮아요. 작은 인형이나, 상상 속의 무언가라도 준비하세요. 그리고 그것(여기선 오리라고 할게요)에게 코드를 최대한 자세히 설명합니다. 이 코드는 무엇을 위한 코드인데, 이 줄은 어떤 역할을 하고… 최대한 오리가 이해할 수 있도록 한 줄 한 줄 설명해봅시다. 그러다 보면 코드의 문제점을 깨닫게 됩니다.
이런 방법을 고무 오리 디버깅 또는 러버 덕킹(Rubber Ducking)이라고 합니다. 코드를 설명하는 과정에서 다시금 코드의 흐름을 파악하고, 버그를 수정하게 됩니다. 꽤 오래 전부터 개발자들 사이에 알려져 있는 방법이고, 생각보다 유용합니다.
42 서울의 커리큘럼에 따라 동료평가를 하다 보면, 자기가 짠 코드임에도 평가자에게 설명하는 과정에서 문제를 눈치채는 경우가 있으셨을지도 모릅니다. 다이소에서 고무오리 하나 사 와서 평가를 맡겨보면, 적어도 그런 일은 일어나지 않을지도 모르지만, 무엇보다 귀엽습니다.
그리고 재미있게도, 꼭 프로그래밍이 아니라도 일상 생활의 문제나 다른 공부에서도 충분히 유용한 기법입니다.
사진 출처(표지)
댓글