더북(TheBook)

6.2 점진적인 개발

작성하는 함수가 커질수록 디버깅에 더 많은 시간을 쓴다는 사실을 깨닫게 될 것이다.

점진적으로 복잡해지는 프로그램을 다루려면 점진적인 개발(incremental development)이라는 개발 절차(process)를 시도해야 한다. 코드를 한 번에 조금씩만 추가하고 테스트하면서 길어지는 디버깅 과정을 피하는 것이 점진적인 개발의 목표다.

일례로 두 점 (x1, y1), (x2, y2) 사이의 거리를 구해야 한다고 하자. 피타고리스의 정리에 따르면 거리는 다음과 같다.

거리 =x2-x12+y2-y12 

첫 번째 단계는 파이썬에서 distance 함수가 어떤 모습이어야 하는지 생각하는 것이다. 즉, 무엇이 입력(인자)이고, 무엇이 출력(반환값)인가?

여기서 입력은 두 점의 좌표이므로 4개의 숫자로 표현할 수 있다. 반환값은 거리이고, 부동소수점 값으로 표현된다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.