01 MVC 簡介 - wycmaker/MVC-learning GitHub Wiki

甚麼是MVC 架構

MVC為Model-View-Controller,是一種軟體工程的軟體設計樣式(Design Pattern),最早由Trygve Reenskaug在1978年提出,主要目的為簡化軟體開發的複雜度,是一種權責分明的架構,將程式架構分為三個部分,所以可以根據不同專長(前端設計、後端設計、資料庫管理)分配不同的任務,適合大型專案與多人同時開發的專案。

Model-View-Controller

  • Model: 負責資料庫管理(連接資料庫)、商業邏輯(演算法)、物件結構定義等等。

  • View: 提供視覺化的介面。

  • Controller: 負責控制系統運行的流程,回應用戶端的各種要求與錯誤處理等等。

處理流程簡單介紹

  1. 使用者發送請求==>Controller(不需要取得資料)==>View==>結果以網頁呈現給使用者

  2. 使用者發送請求==>Controller(不取得資料)==>Model(是否需要連接資料庫)==>Controller==>View==>結果以網頁呈現給使用者

MVC架構的優缺點

優點:

  • 程式架構較清晰明朗

  • 便於系統管理

  • 利於團隊開發專案時的分工

  • 容易進行單元測試

缺點:

  • 小型專案的開發成本較高

  • 開發前的系統規劃較為繁雜

  • 開發文件的數量增加

學習ASP.NET MVC 之前必須的準備工作

  • 建立C#物件導向程式設計概念

  • 建立ORM(Object-Relational Mapping)的概念,ex: LINQ、Entity Framework、ADO.NET

  • 資料庫相關概念(SQL等關聯式資料庫)


參考資料

維基百科:https://zh.wikipedia.org/wiki/MVC

MVC的優缺點:https://ithelp.ithome.com.tw/articles/10202265

ASP.NET MVC Tutorial: https://www.tutorialsteacher.com/mvc/asp.net-mvc-tutorials

書籍: ASP.NET MVC 4 開發實戰