팩토리 패턴

배기호 Notebook·2023년 7월 7일
0

CS공부

목록 보기
9/35

팩토리패턴이란 상속 관계에 있는 두 클래스에서 상위 클래스가 중요한 뼈대를 결정하고, 하위 클래스에서 객체 생성에 관한 구체적인 내용을 결정하는 패턴이다.
상위 클래스에서는 객체 생성방식에 대해 알 필요가 없어져 유연성을 갖게 되며 객체 생성 로직은 하위클래스에서만 관리 되기 때문에 유지보수성이 증가된다.

class CoffeeFactory {
	static createCoffee(type) {
		const factory = factoryList[type]
		resturn factory.createCoffee()
	}
}
class Latte {
	constructor() {
		this.name = "Latte"
	}
}
class Espresso {
	constructor() {
		this.name + "Espresso"
}
}

class LatteFactory extends CoffeeFactory{
	static createCoffee() {
		return new Latte()
	}
}

class EspressoFactory extends CoffeeFactory{
	static createCoffee() {
		return new Espresso()
	}
}

const factoryList = {LatteFactory, EspressoFactory}

const main = () => {
	// 라떼 커피를 주문한다.
	const coffee = CoffeeFactory.createCoffee("LatteFactory")
	// 커피 이름을 부른다.
	console.log(coffee.name) // latte
}

main()

0개의 댓글