該不該選擇ASP.net MVC?

MVC & Web Form

昨天為了解決工作上的問題跑去誠品翻書,意外發現關於ASP.net MVC 2.0的書籍,被吸引過去,已經到2.0了阿,其實對這名詞並不陌生了,但工作忙碌之餘無力學習新事物,怠惰存乎心,一直在考慮要跟進MVC,也在網路上看過許多介紹MVC的資料,那倒底該不該選擇MVC呢?

關於MVC的說明我想我不用介紹了!已經有很多書籍文件都在介紹它拉,主要有三層,View代表著展現層UI介面,Controller則是負責使用者與系統之間的互動,例如Input及Output都是由Controller統籌,最後Model則代表著商業邏輯與資料處理,這三大層的縮寫就是MVC。我相當感興趣的一點是它在View層的撰寫方式跟ASP幾乎一樣!Bravo!讓我想起那直覺性設計的年代,我們要反璞歸真了?這也提供一個相當好的優點,就是模組化設計,我想在維護與共同開發的時候,能夠提供開發團隊更方便更快速的能力,模組切割,同步進行。

除了View這一層,Controller層及Model層的種種自訂模式,跳脫傳統的控制項,可以為開發團隊提供更細微的運作力,即使客戶再龜毛,我們也能利用這點,給予更深入的客製化功能。
 

聽起來MVC這麼容易又這麼方便,我們怎麼還不淘汰ASP.NET Web Form呢?在此有個簡易的分析僅供參考,如果你有以下特性,Web Form 是不錯的。

  1. 對你而言,快速建立網站與完成專案工作,其重要性遠大於對網站技術細節的控制。
  2. 喜歡ASP.NET豐富控制項所帶來的快速建置能力,以及控制項隱藏底層技術複雜度與抽象化運作,讓您專注於工作的本身,而非繁瑣的程式運作細節。
  3. 對於Code-Behind程式寫作的喜好,大過於inline Code,甚至是想盡量避免inline Code的寫作模式。
  4. 對於設計樣式的開發模式不感興趣,甚至是對MVC設計樣式根本不熟悉,也不想了解太多。
  5. 無法捨棄學習多年的技術者。

反之如果你符合以下幾種特質,那採用ASP.net MVC開發可以嘗試看看。

  1. 希望透過Markup程式的編寫,取得網頁運作的完全控制力,甚至不惜多花費一些額外力氣與時間來完成MVC設計樣式的工作。
  2. 不喜歡ASP.NET控制項的底層抽象化運作,喜歡透明及全面性的掌控力。
  3. 不介意inline Code程式編寫風格。
  4. 喜歡設計樣式的程式開發模式,特別是對MVC明確功能性分層的設計模式有著高度偏好。
  5. 期望日後應用程式能更方便維護與擴展。
  6. 希望程式可以有較佳的測試性,或者是讓測試過程變得簡單與順利。
  7. 懷念ASP。(誤)

平心而論,能開發出來的就是好的模組,至於開發過程中的苦與樂,其中滋味誰人知?在兩者之間有所取捨,而非完全脫離,是可以嘗試看看的啦!而且Microsoft默默出到ASP.net 4.0了,日新月異,找到屬於自己的技術,衝吧!

Microsoft MVC  :  http://www.asp.net/mvc

ASP.net MVC 2.0 download : http://www.microsoft.com/downloads/details.aspx?familyid=C9BA1FE1-3BA8-439A-9E21-DEF90A8615A9&displaylang=en

 

 

分享


站作網站設計工作室 SiteMak Studio
Shinyo Ho 
Founder / Developer
email:shinyo.her@gmail.com|web:www.sitemak.com.tw