1. 程式人生 > >淺談MVC模式——複合模式之王

淺談MVC模式——複合模式之王

檢視:用來呈現模型。通常需要從模型中取得它需要的狀態與資料。

控制器:取得使用者的輸入並解讀出其對模型的意思。

模型:持有所有的資料、狀態個程式邏輯。

使用者和檢視互動。檢視告訴控制器你做了什麼。控制器解讀你的動作並告知模型如何做出對應的動作,控制器也可能告知模型做出改變。模型改變時,會通知檢視。

 

複合模式:複合模式結合兩個或以上的模式,組成一個解決方案,解決一再發生的問題。

 

MVC模式就是複合模式。我們來看看它應用了哪些模式吧。首先,模型利用“觀察者模式”讓控制器和檢視可以隨最新的狀態改變而更新。另外,檢視和控制器實現了“策略模式”,控制器是檢視的行為,如果想實現不同的行為,可以換一個控制器。檢視內部使用“組合模式”來控制視窗、按鈕和其他顯示元件。

 

觀察者模式:在物件之間定義一對多的依賴,這樣,當一個物件改變狀態,依賴它的物件都會收到通知並自動更新。

策略模式:定義演算法族,分別封裝起來,讓它們之間可以互相替換,此模式讓演算法的變化獨立於使用此演算法的使用者。

組合模式:允許你將物件組成樹形結構來表現“整體/部分”的層次結構,組合能讓客戶以一致的方式處理個別對象和物件組合。