微軟在2014年5月12日的TechEd大會(huì)上宣布將會(huì)發(fā)布下一代ASP.NET框架ASP.NET vNext的預(yù)覽。此次發(fā)布的ASP.NET框架與以前相比發(fā)生了根本性的變化,凸顯了微軟“云優(yōu)先”(cloud-first)的新戰(zhàn)略思想。Scott Hanselman發(fā)布博客對(duì)ASP.NET vNext進(jìn)行了簡(jiǎn)要介紹。而且ASP.NET入駐Github 下一代ASP.NET將全部開源,寫下本文記錄下這個(gè)時(shí)刻。
微軟在今年的Build大會(huì)上成立.NET開源基金會(huì)和以下這些產(chǎn)品的發(fā)布:
.NET Native - 提前編譯.NET代碼。一切都變得更快了。
.NET編譯器平臺(tái)(Roslyn) - 嶄新的C#以及VB編譯器,新的語言特性,編譯即服務(wù)(compiler-as-a-service),以及,它是開源的。
Nextgen JIT - 為最新處理器優(yōu)化的嶄新的即時(shí)編譯器(Just-in-time-compiler)
ASP.NET vNext的出現(xiàn),將會(huì)把一切推上更高層次。今天,你用來運(yùn)行ASP.NET的通用語言運(yùn)行庫(kù)(CLR)與桌面應(yīng)用所使的是完全相同的。微軟.NET團(tuán)隊(duì)正在做的事情是:增加針對(duì)云計(jì)算環(huán)境進(jìn)行優(yōu)化的CLR版本。優(yōu)化時(shí)考慮的場(chǎng)景包括“低內(nèi)存消耗”以及“高吞吐量”等等。
ASP.NET vNext 使得你能夠?yàn)槊恳粋€(gè)應(yīng)用部署定制化的.NET框架。一個(gè)使用新版本代碼庫(kù)(library)的應(yīng)用不會(huì)和部署在同一服務(wù)器上使用該代碼庫(kù)的不同版本的應(yīng)用打架。不同的應(yīng)用甚至可以有不同優(yōu)化側(cè)重點(diǎn)的個(gè)性化的CLR。CLR以及針對(duì)云環(huán)境優(yōu)化的代碼庫(kù)都成為了可自由選擇和搭配的NuGet包。開發(fā)者可以為其應(yīng)用部署單獨(dú)的.NET框架,同一服務(wù)器上兩個(gè)使用不同版本庫(kù)的應(yīng)用不會(huì)彼此影響,并且應(yīng)用可以使用針對(duì)其云計(jì)算環(huán)境進(jìn)行優(yōu)化的CLR版本。開發(fā)以可以把應(yīng)用依賴定制的CLR以及云優(yōu)化的.NET框架構(gòu)建為一個(gè)NuGet包。
ASP.NET vNext將packages.config、NuGet 配置(nuspec)以及項(xiàng)目文件(csPRojs)合并到統(tǒng)一的項(xiàng)目依賴配置文件project.json中。在輸入類庫(kù)或者NuGet包時(shí),開發(fā)者可以看到完整的智能提示,并且NuGet包會(huì)被自動(dòng)下載到開發(fā)環(huán)境中。
Scott Hanselman博客上對(duì) ASP.NET vNext的介紹告訴我們下一代的ASP.NET 是:
針對(duì)云環(huán)境和服務(wù)器環(huán)境進(jìn)行了優(yōu)化
ASP.NET MVC以及WebAPI被統(tǒng)一到了同一個(gè)編程模型(programming model)中
低延時(shí)的開發(fā)者體驗(yàn)
自帶依賴注入(Dependency Injection out of box)
“并存”(side by side)——每個(gè)應(yīng)用都有自己的運(yùn)行時(shí)(runtime)以及框架隨之部署
一切都來自NuGet——即使是運(yùn)行時(shí)(runtime)也一樣
完全通過.NET Foundation開源,并且接受外部開發(fā)者的貢獻(xiàn)
ASP.NET vNext(還有Roslyn)可以在Mac和linux上的Mono平臺(tái)上運(yùn)行。微軟與Mono團(tuán)隊(duì)合作。將Mono加入到我們的測(cè)試矩陣(test matrix)里。將來我們?cè)贛ono上部署ASP.NET程序就和Windows上一樣了,不會(huì)和現(xiàn)在一樣有很多坑要注意。
本文引用:兼容Mono的下一代云環(huán)境Web開發(fā)框架ASP.NET vNext
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注