40
고성능 파이썬(2판)
전형적으로 이런 개발 방식은 관리팀이 유지보수하기 어려운 코드가 일으키는 지속적인 문제
를 이해하지 못할 때 발생한다. 이 프로토타입 코드를 ‘정리할’ 시간을 주도록 관리자를 설득할
때, 테스트와 문서화가 장기적인 관점에서 팀의 생산성 유지에 도움이 된다는 사실을 보여주면
도움이 된다.
연구 환경에서는 아이디어와 다른 테스트 집합을 반복 적용해보면서 잘못된 코딩 습관을 사용
해 주피터 노트북을 많이 만들어내기 쉽다. 항상 다음 단계에서 “제대로 작성할 거야”하고 마
음먹지만, 이런 단계는 절대 생기지 않는다. 작업 결과를 얻을 수는 있지만, 결과를 재생산하고
테스트하고 신뢰할 수 있는 인프라(하부구조)가 없다. 이럴 때도 위험 요소가 높고, 결과의 신
뢰성은 낮다.
여러분에게 도움이 되는 일반적인 접근 방법은 다음과 같다.
작동하게 만들라
먼저 충분히 좋은 해법을 만들어야 한다. 프로토타입 해법으로 사용되는 ‘폐기한다는 가정하에
일단 만들어 보기’를 적용하고 두 번째 버전에서 더 나은 구조를 사용할 수 있을 것이라 생각하
자. 코딩하기 전에 미리 계획을 세우기를 권장한다. 계획 수립이 불필요하다면, “오후 내내 코
딩을 해서 생각하는 시간을 한 시간이나 절약했어”라고 회고할 수 있어야 한다. 다른 분야에서
는 “두 번 측정하고, 한 번만 잘라라
measure
twice
,
cut
once
”라는 말로 더 잘 알려져 있다.
제대로 만들라
그다음으로, 강력한 테스트 스위트를 만들고 코드와 테스트를 문서로 뒷받침해야 한다. 다른 ...