Android設計模式系列(12)--SDK源碼之生成器模式(建造者模式)

1. 意圖
將一個復雜對象的構建和它的表示分離,使得同樣的創建過程可以創建不同的表示。

2.結構圖和代碼
android中大量的使用對話框組件,它的調用方法就是構建,拼接,表示。

Builder通過setTitle(),setMessage(),setIcon()等方法在create()中構造出一個AlertDialogInstance對象。
然后客戶可以把把AlertDialogInstance對象show出去。

針對這個例子,我有必要通過擴展一下,以正建造者模式之名。
如何擴展?
(1).創建其他的ConcreteBuilder
(2).創建其他的ElseDialog
(3).第1,2步決定了我們最好創建一個抽象的Builder
(4).創建一個Context,把builder注入進去,生產不同的Dialog(或者其他UI)對象。

3.效果
(1).創建型模式
(2).可以生產不同的Dialog,也可以生產其他的UI,生產的Product可以是差別很大的,所以也沒必要為Product定義抽象父類。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容