組合模式(Composite Pattern)要點

1.組合模式有時候又叫做部分-整體模式,是研究樹形結構的問題,它可以使客戶端將樹枝節點(符合元素,有子元素)和葉子節點(沒有子元素)一樣看待,減化了不同類型節點的差異性和複雜性。

2.使得用戶對單個對象和組合對象的使用具有一致性。

3.兩種分類

   透明方式

   樹枝節點和葉子節點都覆寫了基類的方法

   優點:所有的構件類都有相同的接口,葉子節點對象與樹枝節點對象的區別起碼在接口層次上消失了,對客戶端是透明的。

   缺點:不夠安全,當葉子節點的方法在客戶端調用運行時會出錯,這樣就要在葉子節點的方法裏捕獲這類錯誤。

   安全方式

   樹枝節點特有的方法下移至樹枝節點內部實現,這樣葉子節點就不需要實現這些對它自己毫無意義的方法

   優點:安全,客戶端調用在編譯時就出錯,不會等到運行時。

   缺點:不夠透明,因爲樹枝節點和葉子節點將具有不同的接口。

4..net中的運用

   ObjectBuilder的程序集中一個叫定位器的東西。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章