Skip to content

팩토리 패턴 #
Find similar titles

Structured data

Category
Programming

팩토리 패턴은 디자인 패턴의 대표적인 패턴으로 느슨한 결합을 이용하는 객체지향 디자인 방법이다.

단순히 새로운 연산자를 만드는 것보다는 객체를 만드는 과정이 더 중요하다. 객체의 인스턴스를 만드는 작업이 항상 공개되어 있어야 하는 것은 아니며, 모든 것을 공개했다가는 결합과 관련된 문제가 생길 수 있다. 팩토리 패턴을 이용하면 불필요한 의존성을 없앨 수 있다.

디자인 원칙 중에 하나인 바뀔 수 있는 부분을 찾아내서 바뀌지 않는 부분과 분리시켜야 하는 작업이 필요할 때가 있기 때문에 어플리케이션에서 구상 클래스의 인스턴스를 만든느 부분을 전부 찾아내서 어플리케이션의 나머지 부분으로부터 분리/캡슐화시킬 수 있는지 확인할 수 있는 방법이 필요할 수 있다.

  • 팩토리(Factory)

    • 객체 생성을 처리하는 클래스를 팩토리라고 부른다.
    • 객체 구성을 활용하면 구현된 객체를 바꿀 수 있기 때문에 행동을 생성시에 동적으로 바꿀 수 있다.
    • Simple Factory는 디자인 패턴 이라 할 수는 없다. 프로그래밍을 하는데 있어서 자주 쓰이는 관용구에 가깝다고 할 수 있다.
  • 팩토리 패턴의 특징

    • 모든 팩토리 패턴에서는 객체 생성을 캡슐화한다.팩토리 메소드 패턴(Factory Method Pattern)에서는 서브클래스에서 어떤 클래스를 만들지를 결정하게 함으로써 객체 생성을 캡슐화한다.
    • 팩토리 패턴에 등장하는 클래스 종류
      1. 생산자(Creator) 클래스
      2. 제품(Product) 클래스
    • 병렬 클래스 계층 구조 : 생산자와 제품의 캡슐화로 상호 계측구조 형성
    • 객체를 생성하기 위한 인터페이스를 정의하는데, 어떤 클래스의 인스턴스를 만들지는 서브클래스에서 결정하게 만든다.
0.0.1_20210630_7_v33