ASP.NET MVC4 系列教程之第二篇 (MVC4基礎)

ASP.NET MVC4 系列教程之第二篇(MVC4基礎)
1.MVC簡介

Microsoft ASP.NET MVC3是一個全新的Web開發框架,它構建於大名鼎鼎的.NET平臺之上、
ASP.NET MVC3框架完全支持那些提倡鬆耦合、高可維護性的開發模式和實踐原則。


2.WEB開發平臺

瞭解過去是爲了更好地面向未來。在開始學習AsP.NET MVC之前,先花點時間來了解一下其
歷史背景。
很久以前,微軟看到基於Windows系統的基於WEB開發平臺的需求後就提供了自己的解決方案。
在過去的20年中,微軟已經向開發社區提供了多個WEB開發平臺。

(1)活動服務頁面
  微軟的第一個Web開發平臺是ASP,它將腳本語言和代碼放置於同一個文件裏,網站裏的每個
  頁面對應一個物理文件。至今,仍有很多ASP網站還在運行。隨着時間的推移,開發人員希望
  得到更多的支持,希望改進代碼的複用性、更好地分離關注點以及更方便地進行面向對象的
  編程開發。在2002年。微軟提供了一個新的Web開發平臺—ASP.NET來滿足這些需求。

(2)ASP.NET Web表單
  與ASP一樣,ASP.NET網站也提供了基於頁面的方式,每個頁面對應一個物理文件,稱爲web
  Form(Form表單),並且可以通過文件名訪問。與ASP不同的是,Form頁面提供了代碼
  分離機制,把代碼文件和HTML標籤分離到兩個不同的文件中。.NET的WEBFORM已經發展
  了很多年,但仍是很多開發人員的選擇之一。也有一些NET開發者認爲ASP.NET Web Form
  過於抽象了底層的 HTML; JavaScript和CSS;
(3)ASP.NET MVC
  微軟很快發現了ASP.NET 開發人員的新需求,這些需求不同於之前墓於頁面的Web Form
  法。於是,微軟在2008年發佈了第一版ASP.NETMVC。這與之前的Web Form方法完全不同,
  ASP.NETMVC拋棄了基於頁面的架構風格,使用了全新的MVC(模型一視圖一控制器)架構。

  注意:與ASP.NET Web Form取代ASP不同,ASP.NET MVC並沒有取代Web Form的意思。
  恰恰相反,ASP.NET Web FormASP.NET MVC可以共
  存。它們都構建於ASP.NET框架之上,並且都使用了很多相同的WEB API;
  ASP.NET Web FormASP.NET MVC只是開發ASP.NET網站的不同方法。

3.MVC架構

MVC模式是一種嚴格實現應用程序各部分隔離的架構模式。這種“隔離”有一個更響亮的名
字“分離關注點”,更通俗的名稱是“鬆禍合”。實際上,MVC架構包括後面的ASP.NET MVC
框架,都是以實現應用程序模塊之前的隔離爲目標的口
鬆禍合的應用程序架構設計方式,無論是短期還是長期。都能帶來巨大的好處。

開發

單個組件不直接依賴於其他組件,這就意味着每個組件可以獨立部署,也可以被替換。
這種不使用單一文件編譯組件的方式減少了與之相關的組件之間的影響。


測試

組件之間的鬆禍合帶來的好處就是允許測試代碼可以替換真實的產品組件。這樣可以盡
量減少直接調用數據庫,可以直接讓數據庫調用組件返回靜態數據口這種模擬測試大大
地簡化、提升了系統的真實性測試流程。


維護

隔離組件邏輯意味着把影響隔離到最少的組件中—通常只有一個。改變的風險通常和
組件影響的範田有關係,改變的數量越少,影響就越小,·這是顯而易見的。


MvC模式把應用程序分割成三層:模型、視圖和控制器(見圖1一1)。每層擁有特定的職責,
而且它不需要關注其他層如何工作。



模型
模型代表着核心的業務邏輯和數據。模型封裝了域實體的屬性和行爲,並暴露出了實體的屬
性。例如,Auction類代表“拍賣”的邏輯概念,暴露T一些屬性,如Title和CurrentBid
同時也包括表示行爲的一些方法,如Bid()。
視圖
視圖負責轉換模型並把它傳遞給表示層。在WEB應用中,雖然視圖有多種形式,
但是生成那些可以在用戶瀏覽器中渲染的HTML代碼。
控制器
控制器控制程序的邏輯,並且充當着視圖和模型層之間協調的角色。控制器從視圖層接收用
戶輸人的信息,然後使用模型來執行特定的操作,並把最終的結果回傳給視圖。


4.好了,說了這麼多廢話,只是先讓大家瞭解一下ASP.NET 的MVC 模式

下一篇講 逐漸講解MVC的相關知識。





ASP.NET MVC4 系列教程 鏈接:

ASP.NET MVC4 系列教程之第一篇(MVC4 環境安裝)

ASP.NET MVC4 系列教程之第二篇(MVC4基礎)















發佈了35 篇原創文章 · 獲贊 4 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章