-
Notifications
You must be signed in to change notification settings - Fork 0
Abstract Factory Pattern
Glory Day edited this page Jun 16, 2022
·
7 revisions
구체적인 클래스에 의존하지 않고 서로 연과되거나 의존적인 객체들의 조합을 만드는 인터페이스이다.
즉, 관련성이 있는 여러 종류의 객체를 일관된 방식으로 생성하는 경우에 유용하다.
추상 팩토리 패턴 UML 클래스
-
AbstractFactory: 실제 팩토리 클래스의 공통 인터페이스. -
AbstractProduct: 제품의 공통 인터페이스. -
ConcreteFactory: 구체적인 팩토리 클래스로AbstractFactory클래스의 추상 메소드를 오버라이드함으로써 구체적인 제품을 생성한다. -
ConcreteProduct: 구제적인 팩토리 클래서에서 생성되는 구체적인 제품.
전에 팩토리 메소드 패턴의 피자 가게를 기반으로 한 예제이다.
PizzaStore 디자인이 유연한 프레임워크를 가지고, 정한 절차(굽고, 자르고, 상자에 담는 등)는 잘 따르지만, 몇몇 지점
에서 자잘한 재료를 지키지 않는 경우가 발생했다.
각 지점마다 사용하는 재료는 각각 달라 각기 다른 재료를 정하는 방법이 필요하다.
원재료군을 묶은 팩토리 UML 클래스
서로 다른 재료를 제공하려면 원재료군을 처리할 방법을 생각해야 한다.
추상 팩토리로 제품군을 생성하는 인터페이스를 제공하여 코드와 제품을 생산하는 팩토리를 분리할 수 있다.
✨ Author, Glory-Day