extract function

함수 분리는 반복 코드에 이름과 경계를 주는 일이다

코드를 함수로 만들 때는 “자주 쓰이는가”보다 먼저 입력, 출력, 책임이 분명한지 확인합니다.

분리 전: main이 모든 일을 안고 있음

계산, 검증, 출력이 한곳에 섞이면 같은 작업을 복사하게 되고 오류 위치도 흐려집니다.

분리 후: 이름 있는 작은 작업으로 호출

calculateTotal(), printResult()처럼 역할이 보이면 흐름을 읽고 테스트하기 쉬워집니다.

01 반복

같은 계산이나 검사가 두 번 이상 등장합니다.

02 이름

한 문장으로 목적을 붙일 수 있습니다.

03 입력

필요한 값을 매개변수로 분리할 수 있습니다.

04 반환

호출자에게 돌려줄 결과가 명확합니다.

분리 기준: 함수 이름만 읽어도 호출부의 의도가 보이고, 매개변수와 반환값이 짧게 유지됩니다.