8장

    [리펙터링 2판] 8장 - 기능이동

    요소를 다른 컨텍스트(클래스나 모듈 등)으로 옮기는 일 역시 리팩터링의 중요한 축이다. 그리고 옮기기는 문장 단위에서도 이뤄진다. 반복문 관련하여 자주 사용되는 리팩터링도 있는데, 반복문이 단 하나의 일만 수행하거나 반목문을 완전히 없애버리는 방법이 있다. 마지막으로 대부분 프로그래머가 사용하는 죽은 코드 제거하는 리팩터링이 있다. 8.1 함수 옮기기 내용 함수를 기존에 위치한 곳에서 다른 곳으로 이동 적용 어떤 함수가 자신이 속한 모듈 A의 요소들보다 다른 모듈 B의 요소들을 더 많이 참조한다면 B로 옮겨줘야 한다. 함수의 현재 컨텍스트와 후보 컨텍스트를 둘러보면서 호출하는 함수, 데이터를 파악하여 연관성을 살펴 해결한다. 여러 함수를 묶을 컨텍스트가 필요해지면 클래스묶기(6.9), 클래스 추출하기(7..