(1)MVC:把用戶界面交互分拆到不同的三種角色模型、視圖、與控制器上。
模型表示領域信息對象;視圖表示UI中模型的顯示;控制器獲得用戶輸入,對模型進行操作並更新視圖。
MVC關注兩個分離:從模型中分離表現和從視圖中分離控制器。
(2)頁面控制器:在Web站點上爲特定頁面或者動作處理請求的對象。
頁面控制器在Web站點上爲每一個邏輯頁面都準備了一個輸入控制器。這個輸入控制器可能是頁面本身,也可能是對應這個頁面的單獨對象。
(3)前端控制器:爲一個Web站點處理所有請求的控制器。
一個前端控制器處理一個Web站點的所有調用,通常可分爲兩部分:一個Web處理程序和一個Command層次結構。Web處理程序是一個實際上來自Web服務器的Post或Get請求的對象。它從URL中得到足夠的信息,並且決定下一步的動作,然後委託Command執行動作。
(4)模板視圖:通過在HTML頁面嵌入標記向HTML發送消息。
模板視圖的基本思想是在靜態網頁正插入標記。標記隨後與真正的程序進行交互取得處理後的結果。
(5)轉換視圖:一個視圖,它一項一項地處理領域數據,並且把它們轉換成HTML。
轉換視圖的核心思想是寫一個查看面向領域的數據並將其轉換成HTML內容的程序。
(6)兩步視圖:用兩個步驟把領域數據轉換成HTML:形成某種頁面;將這些邏輯頁面轉換成HTML界面。
(7)應用控制器:一個用來處理屏幕導航和應用程序流的集中控制點
應用控制器有兩個主要的職責:決定運行哪個領域邏輯和決定用哪種視圖來限顯示應答消息。所以,一個應用控制器維持兩個指向類的引用集合,一個指向領域命令,另一個指向視圖。