반응형
SMALL
디자인 패턴중 하나인 팩토리 패턴에 대해 정리
*이미지는 팩토리 메서드 패턴과 추상 팩토리 패턴
- 팩토리패턴
- 팩토리 패턴이란?
- 객체를 사용하는 코드에서 객체 생성부분을 떼어내 추상화한 패턴.
- 상속관계에 있는 두 클래스에서 상위 클래스가 중요한 뼈대를 결정하고 하위 클래스에서 객체 생성에 관한 구체적인 내용을 결정하는 패턴.
- 상위 클래스와 하위클래스가 분리되기 때문에 느슨한 결합을 가짐.
- 상위 클래스에서는 인스턴스 생성방식에 대해 전혀 알 필요가 없기 떄문에 더 많은 유연성을 가질수 있음.
- 코드를 리팩터링 하더라도 한 곳만 고칠수 있게 되니 유지 보수성이 증가됨.
- 팩토리패턴의 종류
- 단순 팩토리 패턴(Simple Factory Pattern)
- 팩토리 메서드 패턴(Factory Method Pattern)
- 추상 팩토리 패턴(Abstract Factory Pattern)
- 단순 팩토리 패턴이란?
- 단순 팩토리 패턴은 객체 생성을 처리하는 단일 팩토리 클래스를 사용함.
- 클라이언트는 팩토리 클래스에게 필요한 객체의 타입을 알려주고 팩토리 클래스는 해당 객체를 생성하여 반환.
- 객체 생성을 클라이언트로부터 분리하여 유연성을 제공하지만, 팩토리 클래스는 여러 종류의 객체를 처리해야 하므로 단순 팩토리 패턴은 확장성이 제한적.
- 팩토리 메서드 패턴 이란?
- 팩토리 메서드 패턴은 객체 생성을 처리하는 추상 팩토리 클래스를 정의하고, 이를 서브클래스에서 구체화하는 방식.
- 각 서브클래스는 자체적으로 객체를 생성하고 반환하는 팩토리 메서드를 구현.
- 클라이언트는 추상 팩토리 클래스를 통해 객체를 생성하며, 구체적인 서브클래스를 지정하여 원하는 객체의 타입을 결정.
- 추상 팩토리 패턴(Abstract Factory Pattern)
- 추상 팩토리 패턴은 관련된 객체들의 팩토리를 그룹화하여 제공하는 방식.
- 추상 팩토리 클래스는 서로 관련된 객체들을 생성하는 추상 메서드를 정의하며, 각각의 구체적인 팩토리 클래스는 이를 구현.
- 클라이언트는 원하는 객체군의 추상 팩토리를 사용하여 객체를 생성하며, 객체군 내에서 일관된 객체들을 생성.
- 팩토리 패턴이란?
반응형
LIST
'디자인 패턴 정리 > 개인공부' 카테고리의 다른 글
옵저버 패턴 (1) | 2023.07.13 |
---|---|
옵저버 패턴을 적용한 EventDispatcher 클래스 (0) | 2023.06.12 |
싱글톤 패턴 (0) | 2023.06.12 |