最近讀了一些文章,總結一下:
在1999年,當時微軟的windows系統運作的所有的應用程式都是有元件對象模型為根本基礎開發的,用VB來處理資料通路和複雜的使用者界面,缺點是不能使用函數指針,因為當時的開發環境開發起來很不輕松,所有.NET的出現,變得更好了。
.NET 平台由一個類架構和一個CLR的虛拟機組成,CLR本質上是一個執行環境。CLR上的服務有:記憶體管理,垃圾回收,異常處理,安全,版本管理,調試和分析。跨語言。
CLR上層是語言編譯器和“托管語言”,托管語言是一種對應編譯器的程式設計語言,編譯器能生成IL代碼供CLR執行.
當時.NET提供了C#強大的語言,用類通路底層的Windows SDK的很多功能,這些類建構了BCL,随後出現了ADO.NET WCF WPF,EF,.NET Framework
APS.NET,1999年秋,新的Web架構,APS.NET 取代了ASP.ASP.NET架構包含了IIS擴充,能夠捕捉傳入的HTTP請求,通過ASP.NET的運作時環境處理它們,運作時,找到請求的特定元件,然後為浏覽器準備一個HTTP相應包。運作時的環境的結構就像一個管道,請求進入管道,處理完畢之後,相應被寫回到輸入流中。APS.NET提供一個有狀态的丶基于事件的程式設計模型,允許隐含的上下文從一個請求傳遞到另一個請求。當然這種模型隻限于HTML和JavaScript。
WebForms設計的主要目标:1:提供一個程式設計模型,2:将ASP.NET和IIS混合。
ASP.NET MVC作為ASP.NET運作時的一個插件。優點:選擇其模型處理傳入的請求,容易,快速的建立應用程式,缺點:無法在架構中建立完成的規範的依賴注入基礎結構。而且輸出隻是HTML。
WebAPI出現,OWIN協定出現,讓Web架構與Web伺服器解除耦合的觀念。必須托管到IIS中,這就需要一個ASP.NET應用程式。導緻記憶體量增加,以為要使用兩個運作時環境。
更簡潔的,NET Framework ->.NET Core Framework ,.NET Core Framework移除了應用程式域和代碼通路安全等,相比優點:開源,可與應用程式一同部署,而完成.NET Framework 隻能安裝到目标機器上。能跨平台工作。
ASP.NET Core
Internet<-->Web伺服器(IIS)(Http)<-->内置Web伺服器(不必要)<->ASP.NET代碼。
.NET Core指令行工具CLI.實際上,它是由主機工具(驅動程式員)運作的 指令,dotnet.exe
想要學好,就必須要知道由來和為何出現。才能隻能其作用和用途。-。Dion Esposito