함수를 만드는 첫째 규칙은 '작게!'다. 함수를 만드는 둘째 규칙은 '더 작게!'다.
함수 하나에 추상 개념은 하나 이상이 되면 안된다. getHTML()은 추상화 수준이 아주 높다. 반면 String pagePathName = PathParseer.render(pagepath);는 추상화 수준이 중간이다. 그리고 .append("\n")와 같은 코드는 추상화 수준이 아주 낮다.
단항 함수는 함수와 인수가 동사/명사 쌍을 이뤄야 한다. ex) writeField(name)
*좋은 이름이 주는 가치는 아무리 강조해도 지나치지 않는다.
여느 코드 개선 노력과 마찬가지로 이름 역시 나름 신경써서 바꿨다가 누군가 질책을 할 지도 모른다. 그렇다고 노력을 게을러 해서는 안된다. 책을 읽으면서 공감했던건 함수가 작을 수록 이해하기 쉽고 테스트하기 쉽다는 것이다.
- 함수를 만드는 첫째 규칙은 '작게!'다. 함수를 만드는 둘째 규칙은 '더 작게!'다.
- 함수를 작게 만들수록 테스트하기 쉽다.
- 함수는 한 가지를 해야 한다. 그 한 가지를 잘 해야 한다. 그 한 가지만을 해야한다.