天天看點

2020-ASP.NET 介紹及發展史重新梳理一下

ASP.NET 是微軟基于.NET 架構推出的Web程式設計架構。

ASP.NET起初借鑒了WinForm程式設計模型,就是拖拖控件就能實作界面程式設計,這個時候的ASP.NET 也叫ASP.NET WebForm,後來由于其他公司的競争以及不斷市場需求MVC程式設計模型開始流行,加之WebForm程式設計模型自身的缺陷,它違背了Web程式設計最基本的概念,導緻微軟不得不做出改變,于是基于ASP.NET 的MVC 程式設計模型被支援!

其實在ASP.NET 之前還有個ASP,是微軟還沒推出.NET 架構前的web程式設計解決方案,但ASP.NET 和ASP一點關系也沒有,ASP更像是JSP、PHP 等程式設計技術,就是在html标簽中加入特殊的伺服器标簽,如<% %> , PHP 是<php? > ,JSP是 <% %> 等,都是在伺服器端渲染後傳回HTML+JS+CSS 給浏覽器解析成頁面。

是以到現在,WebForm已經成為曆史了,ASP.NET MVC的版本也一直在疊代中 v1,v2都還是使用和ASP伺服器一樣的伺服器标簽<%%>作為伺服器标記作為渲染标記,到了V3的時候開始引進了Razor渲染引擎,使得在HTML頁面編寫伺服器标記更直覺和友善高效了。

随着市場環境的變化,開源技術和跨平台技術給微軟相當大的壓力,促使微軟不得不擁抱開源和跨平台,于是微軟推出了跨平台解決方案.NET Core。以前的ASP.NET 都隻能在Windows伺服器上部署,這限制了很多公司和個人對自主把控技術的能力。在.NET Core架構對應的web程式設計模型當然就是ASP.NET Core 了。ASP.NET Core 版本也在不斷的疊代中,除了對标ASP.NET MVC,ASP.NET WebApi ,有相應的 ASP.NET Core MVC, ASP.NET Core WebApi ,還引進了 ASP.NET Core RazorPage,它是基于MVVM的程式設計模型。還有其他的程式設計模型如:Blazor 等。

技術發展從來沒停止過,随着前端發展越來越帶勁,前端3大架構Vue.js 、Anglar、React的流行,以及多端技術(移動原生app,微信小程式、支付寶小程式、釘釘小程式等等等)更适合快速開發快速疊代的開發方式,不管前端技術如何變化,其所在程式設計結構方面都不會變的,即前端(PC浏覽器,移動裝置浏覽器,各類APP等)就是向後端請求資料,得到資料後展示資料,而後端接收前端的請求,處理請求并傳回結果,事情已經都很明确了,這也符合大家的期待,我們叫這種程式設計方式為“前後端分離”。

---------------------------------------------後續有補充的再加上,先想到這麼多---------------------------------------------------

2020-ASP.NET 介紹及發展史重新梳理一下