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

Abstract Factory Pattern (추상 팩토리 패턴)

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

서로 연관되거나 의존적인 객체로 이루어진 제품군을 생산하는 인터페이스를 제공하는 것이 목적이다.

 

 

Example

엘레베이터에는 Motor와 Door 부품이 들어간다. Samsung 엘레베이터에는 Samsung Motor와 Door, LG 엘레베이터에는 LG Motor와 Door, A사 엘레베이터는 Motor와 Door를 직접 만들지 않아 Samsung Motor와 LG Door를 사용한다고 하자.

 

이해하기 쉽도록 아래 UML과 매칭시켜 보자.

 

Product는 부품이다. 즉, Motor와 Door이다.

  • AbstractProductA : Motor
  • ProductA1 : Samsung Motor
  • ProductA2 : LG Motor
  • AbstractProductB : Door
  • ProductB1 : Samsung Door
  • ProductB2 : LG Door

Factory는 부품을 구성하여 만들어지는 엘레베이터 이다.

  • AbstractFactory : Elevator
  • ConcreteFactory1 : Samsung Elevator (Samsung Motor와 Door를 creation)
  • ConcreteFactory2 : LG Elevator (LG Motor와 Door를 creation)
  • ConcreteFactory3 : A사 Elevator (Samsung Motor와 LG Door를 creation)

출처 : [Design pattern]개발 현장에서 많이 쓰는 14가지 디자인 패턴의 종류와 정의 (https://naver.me/Ge39nWZH)

 

 

References

'공부 > 디자인패턴' 카테고리의 다른 글

Singleton Pattern (싱글톤 패턴)  (0) 2023.02.03
디자인 패턴  (0) 2023.02.03
Factory Method Pattern (팩토리 메소드 패턴)  (0) 2023.02.02
Factory Pattern (팩토리 패턴)  (0) 2023.02.02
Observer Pattern (옵저버 패턴)  (0) 2023.02.02