3의 법칙 (돈 로버츠 Don Roberts)
// 삼진 리팩토링
1. 처음에는 그냥 한다.
2. 비슷한 일을 두 번째로 하게 되면(중복이 생겼다는 사실에 당황스럽겠지만), 일단 계속 진행한다.
3. 비슷한 일을 세 번째 하게 되면 리팩토링 한다.
함수 매개변수화하기
를 적용하는 것이다.리팩토링은 프로그래밍과 구분되는 별개의 활동이 아니다!
보기 싫은 코드를 발견하면 리팩토링하자. 그런데 잘 작성된 코드 역시 수많은 리팩토링을 거쳐야 한다. (p88)
상황이 변해 기준을 변경해야 할 때 코드가 깔끔하다면 리팩토링하기가 더 쉽다.
무언가 수정하려 할 때는 먼저 수정하기 쉽게 정돈하고(단, 만만치 않을 수 있다.) 그런 다음 쉽게 수정하자. - 켄트 벡 (p88)
계획된 리팩토링은 최소한으로 줄여야 한다. 기능 개발 시 수시로 리팩토링을 작업해야 한다.
대규모 리팩토링보다는 코드를 작업할 때 원하는 방향으로 조금씩 개선하는 것이 바람직하다.