디자인 모델 (5): 생 성 모델 - 건설 자 모델

2583 단어 건설 자 모드
건설 자 모델 의 의 도 는 제품 의 내부 이미지 와 제품 의 생산 과정 을 분리 하 는 것 이다.
아 날로 그:
표시 코드:
package com.javadesignpattern.builder;



public interface Builder {

    

    public void buildPart1();

    public void buildPart2();

    

    public Product retrieveProduct();



}
package com.javadesignpattern.builder;



public class Product {

	

	



}


 
package com.javadesignpattern.builder;



public class ConcreteBuilder implements Builder {

	

	private Product product = new Product();



	public void buildPart1() {

		// TODO Auto-generated method stub

		System.out.println("---buildPart1---");

	}



	public void buildPart2() {

		// TODO Auto-generated method stub

		System.out.println("---buildPart2---");

	}



	public Product retrieveProduct() {

		// TODO Auto-generated method stub

		return product;

	}



}


  
package com.javadesignpattern.builder;



public class Director {

	

	private Builder builder;

	

	public void construct(){

		builder = new ConcreteBuilder();

		builder.buildPart1();

		builder.buildPart2();

		builder.retrieveProduct();

	}

	

	

	//for test

	public static void main(String[] args){

		Director director = new Director();

		director.construct();

		

	}



}


에서 제품 에 대한 건설 자 모델 도 있 는데 그것 이 바로 여러 개의 건설 자, 여러 개의 produt 이 고 개 를 소개 하면 더 말 할 수 있다.
- - - - - 건설 자 와 추상 공장 의 차이 - - - - -
개인 적 으로 이 두 가지 모델 의 사용 장면 이 다르다 고 생각한다.추상 적 인 공장 은 부품 을 생산 하 는 데 쓰 이 고 건설 자 는 부품 을 조립 하 는 데 쓰 인 다.예 를 들 어 자동차의 예 를 들 어 우 리 는 추상 적 인 공장 으로 차 의 부품, 예 를 들 어 바퀴 엔진 등 을 생산 할 수 있다.자동차 에 도 대중, BMW, 아우디 등 브랜드 가 있다.이렇게 하면 단일 부품 의 생산 은 우 리 는 추상 적 인 공장 을 사용 할 수 있다.그러나 이 부품 들 을 어떻게 차 로 조립 하 느 냐 가 건설 자 모델 의 관심 사다.
- - - - 사용 장면 - - - - - - - - - - - - - - - - - - - -
A: 생 성 이 필요 한 제품 은 복잡 한 내부 구조 가 있 습 니 다.모든 내부 성분 자 체 는 대상 일 수도 있 고 대상 의 구성 부분 일 수도 있다.
B: 생 성 이 필요 한 제품 대상 의 속성 은 서로 의존 합 니 다.건설 자 모델 은 단계별 로 집행 되 는 건설 과정 을 강제 할 수 있다.만약 에 한 대상 의 한 속성 이 다른 속성 이 부 여 된 후에 진행 되 어야 한다 면 건설 자 를 사용 하 는 것 은 좋 은 디자인 사상 이다.
 

좋은 웹페이지 즐겨찾기