본문 바로가기
ComputerScience/(짧)CS전공지식노트

1장-디자인 패턴) Factory 패턴

by VictorMeredith 2023. 2. 20.

1.1 Factory pattern 이란?

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

- 상속 관계에 있는 두 클래스에서 상위 클래스가 중요한 뼈대를 결정하고 하위 클래스에서 객체 생성에 대한 구체적인 내용을 결정한다.

- 상위클래스와 하위클래스가 분리되므로 느슨한 결합이 되며, 많은 유연성을 가지게 된다.

- 객체 생성에 대한 로직이 분리되어있어 코드 리팩터링에 유리하다. (유지/보수성 증가)

1.1.1 JavaScript example

예시1)

new Object()로 구현한 팩토리패턴

- 숫자를 전달하거나 문자열을 전달함에 따라 다른 타입의 객체를 생성한다. 즉, 전달 값에 따라 다른 객체를 생성하며 인스턴스의 타입을 정합니다.

 

예시2) 커피팩토리 

커피공장 만들어보기

- CoffeeFactory라는 상위 클래스가 뼈대를 결정하고 하위 클래스인 LatteFactory가 구체적인 내용을 결정한다.

- 이는 의존성주입으로도 볼 수 있다.

- cf) static 을 통해 정적 메소드를 정의하면 클래스의 인스턴스 없이 호출이 가능하며 메모리를 절약할 수 있고, 개별 인스턴스에 묶이지 않으며 클래스 내의 함수를 정의할 수 있는 장점이 있다.

댓글