C#物件導向設計模式第四講:Builder Pattern產生器模式(建立型模式)

來源:互聯網
上載者:User

(根據MSDN Webcast相關課程整理)

產生器模式的緣起:

一個類中主結構(將各個成員組合在一起的構建方法)基本穩定,但內部的幾個組成部分可能經常存在變化。

GOF:將一個複雜物件的構建與其表示相分開,使得同樣的構建過程可以建立不同的表示。

構成主類的某引動部分成員PartA和B是常變化的,而建立器的演算法方式不變,客戶程式通過Director的Construct方法,傳入不同的產生器,從而完成不同類型對象的建立。

以下樣本通過產生器模式可以方便的產生各種風格的房子。只需要實現該風格房子的產生器,並將其作為參數傳給CreateHouse方法就可以啦。

其中的具體類是經常需要變化的部分:

據產生器產生相應的對象,這部分是不需要經常變動的:

客戶程式調用方法:

當添加一種新風格的房子時,以上方法還需要在客戶程式中修改傳入的參數類型,這不是最佳方法,我們其實還可以利用.Net的反射機制動態載入,從而使客戶程式不需要依賴類庫層的對象。

《完》

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.