본문 바로가기
공부/디자인패턴

Factory Pattern (팩토리 패턴)

by 개발자5 2023. 2. 2.
Factory Pattern (팩토리 패턴)

서로 관련성이 있거나 책임이 같은 클래스들을 "생성"해주는 클래스를 객체 생성관정 중간에 두어 복잡도를 줄이는 방법이다. 즉, 비슷한 객체를 공장(factory)에서 찍어내듯이 생성해주는 역할을 하는 클래스를 따로 두는 것을 말한다.

이러한 역할을 하는 클래스의 클래스명 자체에 명시적으로 Factory를 붙여주기도 한다.

 

 

Example

아래는 image type에 따르는 Reader를 생성하는 JAVA 예제이다.

public class ImageReaderFactory {
    public static ImageReader createImageReader(ImageInputStreamProcessor iisp) {
        if (iisp.isGIF()) {
            return new GifReader(iisp.getInputStream());
        }
        else if (iisp.isJPEG()) {
            return new JpegReader(iisp.getInputStream());
        }
        else {
            throw new IllegalArgumentException("Unknown image type.");
        }
    }
}

 

 

References
  • https://en.wikipedia.org/wiki/Factory_(object-oriented_programming)