메소드 시그니처를 신중히 설계하자.

고민할 점

  1. 메소드 이름을 신중히 짓자.
  2. 편의 메소드를 너무 많이 만들지 말자.
  3. 매개변수는 구성을 고민하자. 매개변수는 최대 4개 정도가 좋다. 특히 같은 타입이 연달아 나오면 문제가 된다.

3번은 아래와 같은 기술로 헤쳐나갈 수 있다.

  1. 메소드를 쪼개거나
  2. 매개변수를 묶는 컨테이너 클래스를 만들거나
  3. 1 + 2의 빌더 패턴을 사용한다.

여담으로 매개변수 타입은 클래스보다 인터페이스가 나을 수 있다. 그러면 유연성이 올라간다. 또한 단순 boolean 보다는 직관성을 위해서 Enum 두 개가 나을 수도 있다.