factory-pattern

팩터리 패턴

팩터리 클래스를 따로 둬서 객체 생성 방식을 캡슐화하는 디자인 패턴이다.

팩터리 패턴의 분류

  1. 단순 팩터리 패턴
  2. 팩터리 메서드 패턴
  3. 추상 팩터리 패턴 (복잡하기에 실제로 잘 사용되지 않음)

어디에 사용할 것인가?

객체 생성 과정이 복잡한 경우 객체 생성 프로세스를 캡슐화하고 객체 생성과 사용을 분리하여 코드의 복잡성을 줄이는 팩터리 패턴 사용을 고려할 수 있다.

  1. if 분기 판단 논리가 있고, 유형에 따라서 다른 객체를 동적으로 생성해야할 때
  2. 유형에 따라 다른 객체를 생성할 필요는 없지만, 단일 객체 자체의 생성 프로세스가 복잡한 경우

팩터리 패턴의 역할

  1. 팩터리 패턴을 사용하여 생성 과정을 캡슐화할 수 있다.
  2. 생성 과정을 재사용할 수 있다.
  3. 복잡한 생성 과정을 캡슐화하여, 객체 생성 방법을 몰라도 사용할 수 있다.
  4. 생성 과정과 사용 과정을 분리하여 간결한 코드를 만들 수 있다.