我打字形成的文檔為什么不能 轉存的其他存盤(為什么文檔不能打字了)
1253
2022-05-30
目錄
一、What ASP.NET Core?
二、Why ASP.NET Core?
三、為什么選擇這項技術?
四、ASP.NET Core的優勢具體可以梳理為以下幾個方面:
1、生成Web UI 和Web API的統一場景
2、Blazor
3、跨平臺開發
4、開放源代碼和以社區為中心
5、優點頗多,未來發展潛力巨大
五、 ASP.NET Core未來可期
一、What ASP.NET Core?
ASP.NET Core 是一個新的開源和跨平臺的框架,用于構建如 Web 應用、物聯網(IoT)應用和移動后端應用等連接到互聯網的基于云的現代應用程序。
ASP.NET Core 應用可運行于 .NET Core 和完整的 .NET Framework 之上。構建它的目的是為那些部署在云端或者內部運行(on-premises)的應用提供一個優化的開發框架。它由最小開銷的模塊化的組件構成,因此在構建你的解決方案的同時可以保持靈活性。你可以在 Windows、Mac 和 Linux 上跨平臺的開發和運行你的 ASP.NET Core 應用。
我們挑選了幾個常用的web框架在Linux系統上進行性能測試,可以發現ASP.NET Core的性能可觀。
二、Why ASP.NET Core?
如果要詳細討論.NET Core,就肯定離不開.NET Framework這個框架。自從2000年開始,經過多年的苦心經營,微軟已經在Windows平臺下構建了一個完整的支持多種設備的.NET生態系統。
微軟在2002年推出了第一個版本的.NET Framework,這是一個主要面向Windows桌面(Windows Forms)和服務器(ASP.NET Web Forms)的基礎框架。在此之后,PC的霸主地位不斷受到其他設備的挑戰,為此微軟根據設備自身的需求對.NET Framework做了相應的簡化和改變,不斷推出了針對具體設備類型的.NET Framework,主流的包括Windows Phone、Windows Store、Silverlight和.NET MicroFramework等,它們分別對移動、平板和嵌入式設備提供支持。
與此同時,通過借助于Mono和Xamarin,.NET已經可以被成功移植到包括Mac OS X、Linux、iOS、Android和FreeBSD等非Windows平臺。但是設備運行環境的差異性導致了針對它們的應用不能構建在一個統一的.NET Framework平臺上,所以微軟采用獨立的.NET Framework平臺來對它們提供針對性的支持。
由于這些不同的.NET Framework分支是完全獨立的,這使我們很難開發一個支持多種設備的“可移植(Portable)”應用。微軟目前發布的最新.NET Framework版本為4.7,作為整個.NET平臺的基礎框架,.NET Framework在不斷升級的過程中,使自己變得更加強大和完備,但是在另一方面也使自己變得越來越臃腫。隨著版本的不斷升級,構成.NET Framework的應用模型、BCL和運行時(CLR)都在不斷地膨脹。
就這樣,因為自身的一些束縛和限制,想要做一些快速的迭代和更新,就變成了一件不是很容易的事,它就像一座大山,擋在了微軟快速發展的高速路上。與此同時,隨著整個互聯網行業的分布式與跨平臺的呼聲愈發強烈,除了框架自身越來越臃腫之外,如何實現從強依賴Windows系統,到可以任意平臺運行,這也是擺在微軟面前的另一座大山。
從本質上講,按照CLI規范設計的.NET Framework從其出生的那一刻就具有一定的跨平臺的基因。由于采用了統一的中間語言,微軟只需要針對不同的平臺設計不同的虛擬機(運行時),就能彌合不同操作系統與處理器架構之間的差異,但是做起來并不是一帆風順的。在過去十多年中,微軟將.NET引入到了各個不同的應用領域,表面上看起來似乎欣欣向榮,但是由于采用完全獨立的多目標框架的設計思路,導致針對多目標框架的代碼平臺只能通過PCL,這種“妥協”的方式來解決。如果依然按照這條道路走下去,.NET的觸角延伸得越廣,枷鎖將越來越多。
所以.NET 已經到了不得不做出徹底改變的時候了,當然,微軟并不是從0開始,.NET Framework這個巨人,為微軟能做一個可以跨平臺并能快速迭代的新框架,提供了巨大的幫助。
三、為什么選擇這項技術?
作為下一代ASP.NET框架,ASP.NET Core(目前最新.NET6版本)在各方面都未讓開發者失望,數百萬開發人員在使用或使用過ASP.NET 4.x創建Web應用。ASP.NET Core是對ASP.NET 4.x的重新設計,其中包括體系結構上的更改,產生了更精簡、更模塊化的框架。
四、ASP.NET Core的優勢具體可以梳理為以下幾個方面:
1、生成Web UI 和Web API的統一場景
ASP.NET Core天生基于RESTFUL風格,每個Url直接對應到具體的資源上,對資源的增刪改查都默認走HTTP的POST、DELETE、PUT、Get方式而不是自己在參數包中指定。
Razor Pages 基于頁面的編碼方式簡單高效:Razor Pages簡化了傳統的MVC模式,僅僅使用視圖跟模型來完成網頁的渲染跟業務邏輯的處理。模型里包含了數據跟方法,通過綁定技術跟視圖建立聯系。
2、Blazor
允許在瀏覽器中使用C#和JavaScript,共享全部是用的.NET編寫的服務器端和客戶端應用邏輯。
3、跨平臺開發
能夠在Windows、MacOs和Linux上進行開發和運行,打破了.NET 只能基于Windows平臺使用困境。
4、開放源代碼和以社區為中心
眾所周知,ASP.NET Core源代碼開源,托管于.NET基金會管理。以開發者為中心,賦能開發者,共筑良好社區。目前國內外正在掀起一股.NET熱潮!
5、優點頗多,未來發展潛力巨大
ASP.NET Core能夠托管在各類代理服務器(Kestrel、IIS、Nginx、Docker、Apache)并且擁有輕型的高性能模塊化HTTP請求管道,內置依賴注入降低耦合。
五、 ASP.NET Core未來可期
截止至 2021年5月,全球有超過500萬的.NET開發者。2020年的跨平臺.NET Core 活躍開發者數量增長超過60萬。而這些數據僅來源于Visual Studio IDE,不包含使用其他IDE的開發者。在 2020年的 Stack OverFlow 開發者年度調查報告中,ASP.NETCore 被評為最受歡迎的開發框架。
今年隨著 VS2022以及C#10的發版,.NET也迎來了一個最新的.NET6平臺:性能上又有了大幅提升,支持熱重載,減少應用重啟,從而提升工作效率、提供了更新更全的API,社區也隨之發展壯大,Config大會的舉辦,各個開源社區的興起…總之.NET從未停止前進的步伐,一切都在如火如荼的進行,朝著最好的方向出發。
ASP ASP.NET 嵌入式
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。