微軟ASP.NET MVC 4路線圖曝光
根據(jù)微軟的年度節(jié)奏, 已經(jīng)開始著手下一個版本的ASP.NET MVC的規(guī)劃了。其重點(diǎn)領(lǐng)域包括讓開發(fā)和部署工作流程更平滑,共享更多Web Forms特性,改善對AJAX的支持,并在手機(jī)和平板設(shè)備為HTML5提供更好的體驗(yàn)。
警告:在這篇文章中提到的功能仍處于規(guī)劃階段,未必會出現(xiàn)在最終版本的MVC 4。
Recipes
在開發(fā)速度方面,MVC框架缺乏復(fù)雜的用戶控件是相當(dāng)不利的。MVC團(tuán)隊(duì)正在想辦法提供一種方式,能實(shí)現(xiàn)象Web Forms一樣快速開發(fā),而不會被缺乏控件的情況所拖累。一個想法是“Recipes”的使用。這用一個例子能夠很好的解釋:
假設(shè)開發(fā)人員相要一個客戶端排序的復(fù)雜網(wǎng)格。在Web Froms模式,開發(fā)人員會選擇一個合適的網(wǎng)格式用戶控件。雖然一些定制是允許的,但在大多數(shù)情況下,他們會被迫接受該控件所有的功能無論是否是真正想要的。當(dāng)使用MVC下的recipe,開發(fā)人員將會在一個對話框中選擇他們需要的功能。然后recipe會使用必要的類庫如jQuery來生成所需的HTML和JavaScript。
使用recipe的另一個例子是實(shí)現(xiàn)基于OAuth的認(rèn)證。通常,這需要改變好幾個地方的代碼,其中有一些并非顯而易見的。在這種情況下,recipe會在正確的位置添加所有必要的代碼,這會顯著減少導(dǎo)致運(yùn)行失敗或安全脆弱性的錯誤機(jī)會。
創(chuàng)作你自己的recipe應(yīng)該不會有太大困難。從本質(zhì)上講,它僅僅是一個給定的EnvDTE.DTE接口實(shí)例的對話框。它會像任何其他Visual Studio插件或宏一樣的工作,MVC框架將會處理如在正確的上下文菜單托管recipe這樣的工作。
移動開發(fā)
移動開發(fā)的第一個變化是改善即用樣式表,讓它們在小屏幕上看起來也很舒服。這對于擁有專業(yè)設(shè)計人員的商店來說沒什么了不起的,他們可以從頭開始構(gòu)建CSS;但小商店往往依賴于它來開始工作。
對于那些想要為他們的移動客戶提供更多東西的人,他們可以選擇設(shè)備特有的視圖。開發(fā)者不再需要用CSS和JavaScript來隱藏不適合屏幕的內(nèi)容,而是可以完全刪除它們。這可以立即減少占用的帶寬,并可能產(chǎn)生更快的渲染。
性能改善
眾所周知,采用異步技術(shù)可以大大提高單Web服務(wù)器的最大并發(fā)數(shù)量。但同時大家也都知道異步技術(shù)要求一系列笨重的回調(diào)。
象Web Forms vNext一樣,MVC將從C#5和VB 11支持async/await 的關(guān)鍵字。在下面的例子中,你可以看到兩個異步調(diào)用(可能是到一個數(shù)據(jù)庫的調(diào)用)是如何嵌入視圖模型的構(gòu)造函數(shù)里的。
另一個性能強(qiáng)化是內(nèi)置的CSS和JavaScript組合包。這對高容量網(wǎng)站來說是一個重要功能,因?yàn)樾枰獊砘厝〉么罅扛鞣NCSS和JavaScript。該功能通過把這些文件合并為一個下載文件,并同時刪除注釋和空白而提高渲染的時間。
原文:http://www.infoq.com/cn/news/2011/08/MVC4
【編輯推薦】