티스토리 뷰
architecture/Design Pattern
[디자인 패턴] 추상 팩토리(Abstract Factory) 패턴 with. Java
Hero_O 2022. 9. 9. 19:54추상 팩토리 ( Abstract Factory ) 패턴
🔥 추상 팩토리 패턴은 객체 생성(Create) 패턴 중 하나로 서로 관련된 객체를 여러 개를 묶어 서 생성해 줄 팩토리 객체를 제공하는 방식이다.
객체 모델
AbstractFactory
구체적인 팩토리 를 추상화 하여 클라이언트 입장에서 ConcreateFactory 와 낮은 결합도(Loose coupling) 를 유지하기 위해 존재하는 추상화된 팩토리.
클라이언트와 팩토리가 낮은 결합도를 가진다는 것은 팩토리 확장이 쉽다는 의미.
Product
구체적인 프로덕트를 추상화 하여 클라이언트 입장에서 ConcreatProduct 와 낮은 결합도(Loose coupling) 를 유지하기 위해 존재하는 추상화된 팩토리.
클라이언트와 프로덕트가 낮은 결합도를 가진다는 것은 프로덕트 확장이 쉽다는 의미.
장점
- 구체적인 클래스를 분리하고 숨겨 Loose coupling 을 구성하여 변경에는 닫혀있고 확장에는 열려있는 코드 작성이 가능하다.
단점
- 클래스 수의 증가로 코드 복잡도가 높아진다.
팩토리 메소드 패턴과 차이
목적 차이
- 팩토리 메소드 패턴
- 팩토리의 구체적인 객체 생성을 상위 클래스에서 서브 클래스로 옮기는 것이 목적
- 추상 팩토리 패턴
- 여러 객체를 구체적인 클래스에 의존하지 않고 클라이언트에게 제공하여 클라이언트가 구체적인 클래스에 의존하지 않도록 하는 방법.
예제코드
위 객체 모델에서 소개한 예제 코드
참조
'architecture > Design Pattern' 카테고리의 다른 글
[디자인 패턴] 프로토타입 ( Prototype ) 패턴 (0) | 2022.09.14 |
---|---|
[디자인 패턴] 빌더 패턴 ( Builder Pattern ) with. Java (0) | 2022.09.12 |
[디자인패턴] 팩토리 메소드 패턴 ( Factory Method Pattern ) with.Java (0) | 2022.09.10 |
[디자인 패턴] 싱글턴 패턴 (Singleton Pattern ) with.Java (0) | 2022.09.08 |
[디자인 패턴] 옵저버 패턴 (Observer Pattern) with.Java (0) | 2022.09.07 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 수평 분할
- 메모리 파편화
- Clean Architecture
- 객체 풀
- RestAssured
- OOP
- pool
- pass by reference
- 세션 불일치
- SpringBoot 2.2
- multimap
- 외부 단편화
- 동적 디스패치
- Memory Fragmentation
- 육각형 아키텍처
- 클린 아키텍처
- 수직 분할
- 정적 타입 언어
- 동적 타입 언어
- 메모리 단편화
- 장애 해결기
- 뾰족함
- Object Pool
- java
- Sticky Session
- pass by value
- Session
- 내부 단편화
- ATDD
- 컴포짓 패턴
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함