Skip to content

Latest commit

 

History

History

02_생성자에_매개변수가_많을_때는_빌더를_고려하자

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

생성자에 매개변수가 많은 때는 빌더를 고려하자

생성자는 선택적인 매개변수가 있을 경우, 신축성있게 처리하지 못 한다.

텔리스코핑 생성자 패턴

  • 매개변수의 수가 증가하면 버거움
  • 코드 가독성 떨어짐

자바빈즈 패턴

  • 객체의 일관성 유지 안됨
  • 불변 클래스 가능성 배제 -> 쓰레드에서 안정성을 유지하려면 추가적인 노력 필요
  • freezing -> 적용이 어려움

빌더 패턴

  • (텔리스코핑의 안정성 + 자바빈즈의 가독성) 결합
  • 파이썬의 named 매개변수처럼 동작

장점

  • 부적합한 매개변수 전달시 이상 유무를 검출할 수 있다.
  • 여러 개의 가변인자를 가질 수 있다.

단점

  • 어떤 객체를 생성하기 이전에 그 객체에 대한 빌더를 생성해야 한다.
  • 코드가 (텔레스코핑 패턴에 비해) 길어진다. -> 매개변수가 4개 이상일 때 사용하자.

많은 매개변수를 갖게될 클래스를 설계할 때는 빌더 패턴이 좋은 선택이다.