함수를 읽기 쉽고 이해하기 쉽게 하는 방법. 의도를 분명히 표현하는 함수를 구현하는 방법. 처음 읽는 사람이 프로그램 내부를 직관적으로 파악할 수 있도록 하는 속성의 종류.
함수는 작을수록 좋다.
함수는 한 가지를 해야 한다. 그 한 가지를 잘 해야 한다. 그 한 가지만을 하야 한다.
지정된 함수 이름 아래에서 추상화 수준이 하나인 단계만 수행한다면 그 함수는 한 가지 작업만 한다.
단순히 다른 표현이 아니라 의미 있는 이름으로 다른 함수를 추출할 수 있다면 그 함수는 여러 작업을 한다.
함수 내 섹션
함수가 확실히 한 가지 작업만 하려면 함수 내 모든 문장의 추상화 수준이 동일해야 한다.
한 함수 내에 추상화 수준을 섞으면 코드를 읽는 사람이 헷갈린다.
∵ 특정 표현이 근본 개념인지 아니면 세부 사항인지 구분하기 힘들기 때문