추상 팩토리 패턴
- 객체 생성 관련 디자인 패턴.
- 서로 관련있는 여러 객체를 만들어주는 인터페이스.
- 구체적으로 어떤 클래스의 인스턴스를 사용하는지 감출 수 있다.
- 클라이언트 코드에서 구체적인 클래스의 의존성을 제거한다.
구체적인 팩토리에서 구체적인 인스턴스를 만드는 것까지는 팩토리 메서드 패턴과 굉장히 유사하지만,
초점이 팩토리를 사용하는 클라이언트 쪽에 있다.
추상 팩토리 패턴의 목적은 팩토리에서 인스턴스를 만들어 사용하는 클라이언트 코드를 인터페이스 기반으로 구성하기 위한 패턴이다.
그래서 모양은 팩토리쪽을 중점적으로 보면 팩토리 메서드 패턴과 굉장히 유사하지만,
팩토리를 사용하는 쪽이랑 같이봐야 이 패턴에 의미가 있다.
팩토리 메서드 패턴과 추상 팩토리 패턴은 둘 다 구체적인 객체 생성 과정을 추상화한 인터페이스를 제공한다는 점에서 모양과 효과가 비슷하다.
하지만 서로 관점이 다르다.
팩토리 메서드 패턴은 ‘팩토리를 구현하는 방법’에 초점을 둔다.
추상 팩토리 패턴은 ‘팩토리를 사용하는 방법’에 초점을 둔다.
그리고 서로 목적이 다르다.
팩토리 메서드 패턴은 구체적인 객체 생성 과정을 하위 또는 구체적인 클래스로 옮기는 것이 목적이다.
추상 팩토리 패턴은 관련있는 여러 객체를 구체적인 클래스에 의존하지 않고 만들 수 있게 해주는 것이 목적이다.
https://refactoring.guru/ko/design-patterns/abstract-factory
'프로그래밍 강의 메모 > 코딩으로 학습하는 GoF의 디자인 패턴_백기선' 카테고리의 다른 글
구조 관련 디자인 패턴 > 어댑터 패턴(Adapter Pattern) (0) | 2022.05.25 |
---|---|
객체 생성과 관련 디자인 패턴 > 프로토타입 패턴(Prototype Pattern) (0) | 2022.05.25 |
객체 생성과 관련 디자인 패턴 > 빌더 패턴(Builder Pattern) (0) | 2022.05.25 |
객체 생성과 관련 디자인 패턴 > 팩토리 메서드 패턴(Factory Method Pattern) (0) | 2022.05.25 |
객체 생성과 관련 디자인 패턴 > 싱글톤 패턴(Singleton Pattern) (0) | 2022.05.24 |