본문 바로가기

디자인 패턴

팩토리 패턴 (Factory Pattern)

728x90

팩토리 패턴

 

객체를 사용하는 코드에서 객체 생성 부분을 떼어내 추상화한 패턴이다.

상속 관계에 있는 두 클래스에서 상위 클래스가 뼈대를 결정하고 하위 클래스에서 객체 생성에 관한 세부 내용을 결정한다.

상위 클래스와 하위 클래스의 분리로 유연성이 증대되고 객체 생성 로직이 따로 있어 리팩토링하더라도 유지 보수성이 증가된다.

 

구현 형태

 

CoffeeFactory 상위 클래스에서는 뼈대를 만들고 Latte, Americano, DefaultCoffee 등 하위 클래스들은 세부 정보들을 가지고 있어 위의 코드에서는 세부 정보에 따라 알맞은 객체를 생성해준다.

Latte, Americano, DefaultCoffee 클래스를 기반으로 객체를 생성하지 않고 CoffeeFactory를 통해 생성하게 되며 

getCoffee를 정적 메소드로 정의하여 해당 메소드 메모리 할당을 한 번만 진행한다.

728x90

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

옵저버 패턴 (Observer Pattern)  (0) 2023.04.26
전략 패턴 (Strategy Pattern)  (0) 2023.04.26
싱글톤 패턴 (Singleton Pattern)  (0) 2023.04.24