組合關係與組合模式

2022-04-16 01:55:07 字數 714 閱讀 4478

物件a包含物件b,物件b離開物件a沒有實際意義。是一種更強的關聯關係。人包含手,手離開人的軀體就失去了它應有的作用。

場景: window窗體由滑動條slider、頭部header 和工作區panel組合而成。

將物件組合成樹形結構以表示」部分-整體」的層次結構。 組合模式使得使用者對單個物件和組合物件的使用具有一致性.

yui widget的相關設計中外掛程式和擴充套件機制,都能實現這個組合的模型,具體運用起來, 可對比如下:

function slider() {}

slider.prototype.drag = function()

function header()

header.prototype.addtitle = function()

function panel()

panel.prototype.dosomething = function() {}

function window()

y.mix(window, slider, false, null, 1);

y.mix(window, header, false, null, 1);

y.mix(window, panel, false, null, 1);

function window(config)
雖然外掛程式也能勉強實現功能,不過類似這種場景不太適合用外掛程式來實現

繼承與組合關係

其中乙個編輯原則是 少用繼承多用組合 這句經典的話其實很容易明白,因為在編寫 路上很快就遇到這問題,也很快就明白為什麼,但我為什麼又要記入和?因為我有另乙個層次的體會 在繼承中我們無法呼叫繼承物件,而組合物件誰都可以呼叫。就這句是我體會到的 舉個例子 孩子繼承父親,孩子擁有父親的物件,在呼叫時chi...

組合模式 設計模式 組合模式

1.需求分析 假設要給乙個大公司做辦公管理系統,公司有人力資源部 財務部等,然後公司在其他城市還有分公司,分公司也有自己的人力資源部 財務部等,要求總公司 分公司以及各部分成樹狀結構管理。要完成這麼乙個系統,為了有乙個更好的設計,方便開發的展開,就需要了解乙個設計模式 組合模式。2.定義 將物件組合...

設計模式 組合模式 組合模式使用

目錄 組合模式概括 組合模式使用場景 定義 將物件組合成樹形結構以表示 部分 整體 的層次結構 作用 使客戶端對單個物件和組合物件保持一致的處理方式 使用場景 1.希望客戶端可以忽略組合物件與單個物件的差異時 2.處理乙個樹形結構時 優點 清楚的定義分層次的複雜物件,表示物件的全部或部分層次 讓客戶...