더북(TheBook)

마지막으로 circlearc를 사용하는 것으로 고쳐 보자.

def circle(t, r):

arc(t, r, 360)

인터페이스를 개선하고 코드 재사용을 쉽게 하도록 프로그램을 재정리하는 과정을 리팩터링(refactoring)이라고 한다. 이 예에서는 arcpolygon에 비슷한 코드가 있다는 걸 알고 이를 polyline으로 뽑아놓았다(factored it out).

우리가 미리 계획을 세워서 polyline을 작성했다면 리팩터링을 피할 수 있었을 것이다. 그렇지만 프로젝트 초기에 모든 인터페이스를 디자인할 정도로 모든 걸 알고 있기는 어렵다. 코딩을 해 봐야 문제를 더 잘 이해하게 된다. 때때로 리팩터링은 무언가를 배웠다는 증거일 수 있다.

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