Abstract Factory 패턴

Posted in Programming by

패턴이 유용한 경우

1. 객체의 생성이나 구성 또는 표현 방식에 독립적으로 만들고자 할 때

2. 여러 제품군 중 사용할 제품군을 선택할 수 있도록 할 때

3. 생성되는 객체가 항상 같은 제품군에 속하는 것을 보장하고 싶을 때

4. 인터페이스만을 공개하고 구현은 숨기고 싶을 때

 

장점

객체 생성 과정 및 생성 종류를 클라이언트에게 숨길 수 있다.

수정 사항 발생 시 변경을 최소화 한다.

 

단점

제품군의 개수가 늘어 날수록 하위 클래스의 개수가 늘어 난다.

새로운 기능이 추가 될경우 모든 Factory 클래스를 수정해야 한다.

 

출처 : GoF 디자인 패턴! 이렇게 활용한다