목차
1. 디자인 패턴
1.1 정의
1.2 구성요소
1.3 디자인 패턴 카탈로그
- 생성패턴
- 구조패턴
- 행위패턴
2. The Factory Method Pattern
3. Prototype Pattern
4. Adapter Pattern
5. Composite Pattern
6. Flyweight Pattern
7. Decorator Pattern
8. Proxy Pattern
9. Chain of Responsibility Pattern
10. Command Pattern
1.1 정의
1.2 구성요소
1.3 디자인 패턴 카탈로그
- 생성패턴
- 구조패턴
- 행위패턴
2. The Factory Method Pattern
3. Prototype Pattern
4. Adapter Pattern
5. Composite Pattern
6. Flyweight Pattern
7. Decorator Pattern
8. Proxy Pattern
9. Chain of Responsibility Pattern
10. Command Pattern
본문내용
2.The Factory Method Pattern
l객체 지향 프로그램에서 계속해서 볼 수 있는 패턴 중의 하나이다. Factory 패턴은 제공된 데이터에 의존하는 여러 가능한 클래스 중의 하나를 반환하는 것이다. 일반적으로 반환되는 모든 클래스는 공통적인 부모 클래스와 공통적인 메소드를 가지지만, 그것들 각각은 다른 일을 하고, 다른 종류의 데이터를 위해 최적화 되어진다.
2.1 구조
lProduct(제품)의 역할
생성된 제품(인스턴스)가 가지고 있어야 할 인터페이스(API)를 결정하는 추상 클래스, 구체적인 역할은 하위 클래스인 SpecificProduct 역할이 결정한다.
lCreator(생산자)의 역할
Product 클래스를 생성하는 추상 클래스, Creator는 실제 제품을 생성하는 일을 하는 SpecificCreator 역할에 대해서는 아무것도 모른다.
lSpecific Product(구체적 제품)의 역할
구체적인 제품을 나타내는 클래스
lSpecific Creator(구체적 생산자)의 역할
구체적인 제품을 만드는 클래스
2.2 의도
객체를 생성하는 인터페이스를 따로 정의한다. 그리고 생성되는 객체의 클래스를 결정하는 것은 하위 클래스에서 담당한다. 이 패턴은 어떤 클래스가 객체를 생성하는 일을 하위 클래스에게 위임한다.
2.3 적용시기
- 객체들에 대한 클래스의 종류를 예상 할 수 없을 때
- 생성할 객체를 기술하는 책임을 서브클래스에 정의하고자 하는 경우
- 객체 생성의 책임을 서브클래스에서 위임시키고 서브클래스에 대한 정보를 은닉하고자 하는 경우
l객체 지향 프로그램에서 계속해서 볼 수 있는 패턴 중의 하나이다. Factory 패턴은 제공된 데이터에 의존하는 여러 가능한 클래스 중의 하나를 반환하는 것이다. 일반적으로 반환되는 모든 클래스는 공통적인 부모 클래스와 공통적인 메소드를 가지지만, 그것들 각각은 다른 일을 하고, 다른 종류의 데이터를 위해 최적화 되어진다.
2.1 구조
lProduct(제품)의 역할
생성된 제품(인스턴스)가 가지고 있어야 할 인터페이스(API)를 결정하는 추상 클래스, 구체적인 역할은 하위 클래스인 SpecificProduct 역할이 결정한다.
lCreator(생산자)의 역할
Product 클래스를 생성하는 추상 클래스, Creator는 실제 제품을 생성하는 일을 하는 SpecificCreator 역할에 대해서는 아무것도 모른다.
lSpecific Product(구체적 제품)의 역할
구체적인 제품을 나타내는 클래스
lSpecific Creator(구체적 생산자)의 역할
구체적인 제품을 만드는 클래스
2.2 의도
객체를 생성하는 인터페이스를 따로 정의한다. 그리고 생성되는 객체의 클래스를 결정하는 것은 하위 클래스에서 담당한다. 이 패턴은 어떤 클래스가 객체를 생성하는 일을 하위 클래스에게 위임한다.
2.3 적용시기
- 객체들에 대한 클래스의 종류를 예상 할 수 없을 때
- 생성할 객체를 기술하는 책임을 서브클래스에 정의하고자 하는 경우
- 객체 생성의 책임을 서브클래스에서 위임시키고 서브클래스에 대한 정보를 은닉하고자 하는 경우
소개글