프로그램이 새로운 기능을 추가하기 편한 구조가 아니라면, 먼저 기능을 추가하기 쉬운 형태로 리팩터링 후 원하는 기능을 추가하자.
리팩터링 전 제대로 된 테스트부터 마련한다. 테스트는 반드시 자가진단하도록 만든다.
리팩터링은 프로그램 수정을 작은 단계로 나눠 진행한다. 중간에 실수하더라도 버그를 쉽게 찾을 수 있다.
- 변수 짓기
매개변수 이름에 접두어로 타입 이름 적기
매개변수 역할이 뚜렷하지 않을 때는 부정 관사(a/an) 붙이기
켄트 백 (Smalltalk Best Practice Patterns)