함수를 작게 만들어라.

책에서는 2~3줄이면 충분하다고 말하고 있습니다.

함수는 한 가지만 해야한다.

아래의 코드는 한 가지 일만 수행한다고 말할 수 있을까요?

  1. 테스트 페이지 판단한다.
  2. 그렇다면 설정페이지와 해제 페이지를 포함시킨다.
  3. 페이지를 html로 렌더링한다. 위처럼 세 가지 일을 한다고 볼 수도 있습니다.

하지만 함수 이름 아래에서 추상화 수준이 하나이므로 한 가지 작업을 한다고 판단합니다.

public static String renderPageWithSetupsAndTeardowns(PageData pageData, boolean isSuite)throws Exception {
  if (isTestPage(pageDate)){
    includeSetupAndTeardownPages(pageData, isSuite);
  }
  return pageData.getHtml();
}

댓글남기기