初探MVC Model:負責定義信息格式月信息訪問的界面,包括商業邏輯與信息驗證。 View:負責用戶界面相關呈現,包括輸入與輸出。 Controller:負責控制系統的運行流程、跟瀏覽器的交互、決定網頁操作的流程與動線、響應客戶端的各種要求、錯誤處理等等。 定義數據結構 負責與資料庫溝通 從資料庫 ...
初探MVC
何謂MVC
簡單來說就是開發程式時所使用的一種“架構(框架)”。它就是開發的一種觀念,或者說是存在已久的設計規則。我們知道在開發過程中總會伴隨著需求、技術、客戶、老闆等因素的變化,給開髮帶來質量與維護上的傷害,這個事實也無法逃脫,而MVC就能化解這種傷害,至此它就成了一種有效的解決方案。
MVC組成單元
- Model:負責定義信息格式月信息訪問的界面,包括商業邏輯與信息驗證。
- View:負責用戶界面相關呈現,包括輸入與輸出。
- Controller:負責控制系統的運行流程、跟瀏覽器的交互、決定網頁操作的流程與動線、響應客戶端的各種要求、錯誤處理等等。
Model職責
- 定義數據結構
- 負責與資料庫溝通
- 從資料庫讀取數據
- 將數據寫入資料庫
- 運行預儲程式
- 數據格式驗證
- 定義與驗證商業邏輯規則
- 對數據進行各種加工處理
View職責
- 輸出
- 從Controller獲取數據,並顯示在用戶界面上
- 決定要用什麼來呈現“用戶界面”(HTML、XML、Silverlight、Flash等)
- 負責界面的排版、字型、顏色、美觀與各種呈現方式
- 將Controller傳送的數據顯示於界面,而數據多是來自Model的定義
- 輸入
- 負責將數據 送回Controller
- HTML窗體通過GET或POST輸出數據
- 決定數據送到哪個Controller的Action中
- 決定數據傳送的方式,如:GET、POST、XML HTTP Request
- 前段的基本數據格式驗證
Controller職責
- 決定於用戶溝通的管道,以ASP.NET為例就是HTTP或者HTTPS
- 決定系統運行的流程,如:接到數據立即轉向(Redirect)另一個頁面
- 負責從Model中取得數據
- 決定顯示的View
Model-View-Controller之間的關聯性