1. 程式人生 > >設計模式-建立型模式-建造者模式

設計模式-建立型模式-建造者模式

設計模式-建立型模式-建造者模式
建造者模式即生成器模式,將一個複雜的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示。

程式碼如下

// 產品類
public class Product{
    public void doSomething(){
        // 業務處理
    }
}
// 抽象建造者
public abstract class Builder {
    // 設定產品,獲得不同的產品
    public abstract void setPart();
    // 建造產品
    public abstract Product buildProduct();
}
// 具體的建造
public class ConcreteProduct extends Builder {
    private Product product = new Product();    // 新建產品
    // 設定產品
    public void setPart(){
        // 產品設定,對product進行設定
    }
    // 進行產品組建
    public Product buildProduct(){
        return product;
    }
}

設定導演

public class Diector{
    private Builder builder = new ConcreteProduct();    // 新建一個具體建造
    // 構建產品
    public Product getAProduct(){
        builder.setPart();  // 對要生產的產品進行設定
        return builder.buildProduct();  // 生產出產品
    }
    
}

總結

建造者模式,即要對產品進行設定,進行生產,然後由一個導演將這些內容封裝到一個方法裡,然後使用即可。

應用

遊戲軟體,地圖包括天空,地面,背景等組成,人物也由這些組成,使用建造者模式,首先將天空,地面,背景,作為產品,設計一個類,然後,設定建造者,根據不同的情況設定不同的地圖,不同的地面,將設定引數傳入,然後最後導演,將這些方法封裝成一個方法,然後直接get即可得到一幅地圖。
人物也是如此。