设计模式之禅-建造者模式

建造者模式:

  将一个复杂对象的构建与它的表示部分分离,使得同样的构建过程可以创建不同的表示。 

个人见解:

  建造者模式是模版模式的加强版,每个实体类的构建更灵活。这种灵活的构建逻辑需要director来管理。

模版:

  

/**
 * 产品类
 * @author Administrator
 *
 */
public class Product {
    public void doSomething(){
        //独立业务处理
    }
}

/**
 * 抽象建造者
 * @author Administrator
 *
 */
public abstract class Builder {
    //设置产品的不同部分,以获得不同的产品
    public abstract void setPart();
    //建造产品
    public abstract Product buildProduct();
}

public class ConcreteProduct extends Builder {
    private Product product = new Product();
    @Override
    public void setPart() {
        /*
         * 产品内的逻辑处理
         */

    }

    @Override
    public Product buildProduct() {
        
        return product;
    }

}
/**
 * 导演类
 * @author Administrator
 *
 */
public class Director {
    private Builder builder = new ConcreteProduct();
    //构建不同产品
    public Product getAProduct(){
        builder.setPart();
        /*
         * 设置不同的逻辑,产生不同的产品
         */
        return builder.buildProduct();
    }

}

 

  

posted @ 2012-06-18 22:56  风叉叉  阅读(151)  评论(0编辑  收藏  举报