Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
Tags
- nginx
- elastic search
- apache storm
- scala
- Spring Batch
- SBT
- DDD
- 스프링 배치
- Java
- Gradle
- 도메인주도설계
- 엘라스틱서치
- Storm
- 제주
- Spring
- Clean Code
- intellij
- Angular2
- elasticsearch
- hadoop
- spark
- design pattern
- Hbase
- docker
- Spring Boot
- hdfs
- hibernate
- Linux
- Spring XD
- Domain Driven Design
Archives
- Today
- Total
욱'S 노트
Abstract Factory - 공장 자체를 제공하자 본문
When Using It
생성이 복잡한 부품들을 제조하는 공장 자체를 만들어 제공하고 싶을때
Class Diagram
Sample Code
Caution
특별한 주의사항은 없다.
생성이 복잡한 부품들을 제조하는 공장 자체를 만들어 제공하고 싶을때
Class Diagram
Sample Code
public class AbstractProduct {
}
public class ConcreteProduct extends AbstractProduct {
}
public class ConcreteProduct2 extends AbstractProduct {
}
public abstract class AbstractFactory {
public AbstractFactory getFactory(String name) {
if (name.equals("A")) {
return new ConcreteFactory();
} else {
return null;
}
}
protected abstract AbstractProduct createProduct();
protected abstract AbstractProduct createProduct2();
}
public class ConcreteFactory extends AbstractFactory {
@Override
public AbstractProduct createProduct() {
return new ConcreteProduct();
}
@Override
public AbstractProduct createProduct2() {
return new ConcreteProduct2();
}
}
Caution
특별한 주의사항은 없다.
'Methdology > Design Pattern' 카테고리의 다른 글
Adapter - 입맛대로 사용하기 (0) | 2012.04.10 |
---|---|
Prototype - 인스턴스 복사하기 (0) | 2012.04.10 |
Factory Method - 클래스에서 인스턴스 생성시 결합도 줄이기 (0) | 2012.04.09 |
Builder - 복잡한 인스턴스 만들기 (0) | 2012.04.04 |
Singleton - 유일한 인스턴스 만들기 (0) | 2012.04.04 |
Comments