Net Framework 是什么
1.Net Framework 是Net的一種實現,在此類庫上我們可以使用C#,VB,F#進行程序編寫,主要用於構建Windows 下的應用程序
2.有兩部分組成部分:
i. 公共語言運行時(CLR)處理應用程序
ii. 基礎類庫(BCL)這是可重用的代碼庫,使用其編寫進行應用程序編寫
3.在執行的過程中.Net編寫的代碼將會編譯成一種稱為中間語音(IL)存儲形式以DLL和EXE后綴名結尾的文件為主,當程序運行時CLR會編譯轉換為機器代碼。
4. Net Framework 本身不是跨平台的也就是話說僅限於運行在Windows 平台,想要跨平台需要借助第三方。
Net Core 是什么
1.Net Core 的出現就是為了適應軟件開發的趨勢,因為各種不同的設備還有雲計算的出現,其他的操作系統使用量也有所增加,如果Net 不發生改變也就意味着市場將會越來越小。Net Core的出現用於滿足當前以及未來軟件開發的需求
2.NetCore是一個全新的框架,是.Net的跨平台的實現,它和Net Framework有很多共同的特性,這也就意味着Net Framework從業者轉到Net Core 將會變的很簡單。
3.Net Core的所有方面都是開源的,無論是類庫,運行時,編譯器。NET Core3.0之后支持了C#,VB,F#。
Net Standard 是什么
1. Net Standard 是一個規范,它定義了Net Framewoek和Net Core必須實現的Api,它的出現為各種平台上開發的.Net人員解決了代碼共享問題,但是僅用於開發類庫,意思就是說如果你的類庫是Net Standard規范的,那么此類庫既可以是Net Framewoek也可以是Net Core類庫。
2. 微軟提供的的圖表詳細說明了各個不同版本的兼容情況
i. 如果我們的類庫是NET Standard 2.0版本的如果想在Net Framework和Core兩種實現中使用,則根據此圖表,我們必須為.NET Core項目選擇2.0版本和NET Framework 4.6.1的版本
總結:
每個.NET版本都對應一個.NET Standard版本
從上面我們可以看出,.Net 是一種標准,而Net Framework 和NetCore 是.Net 的一種實現。而Net Standard 是一個規范。
.NET5 是什么
這將是.NET系列中的下一個重要版本。
將來只會有一個.NET,您將可以使用它來瞄准Windows,Linux,macOS,iOS,Android,tvOS,watchOS和WebAssembly等。
從.NET Core項目開始以來,我們已經向該平台添加了大約五萬個.NET Framework API。.NET Core 3.0彌補了.NET Framework 4.8的大部分剩余功能差距,從而啟用了Windows Forms,WPF和Entity Framework6。.NET5在此工作的基礎上,利用.NET Core和Mono的優勢來創建了一個單一平台,您可以將其用於所有現代.NET代碼。
.NET 5 = .NET Core vNext
.NET 5是.NET Core的下一步。該項目旨在通過一些關鍵方式來改進.NET:
- 生成一個.NET運行時和框架,該框架可在任何地方使用,並具有統一的運行時行為和開發人員經驗。
- 通過充分利用.NET Core,.NET Framework,Xamarin和Mono來擴展.NET的功能。
- 用單個代碼庫構建該產品,開發人員(Microsoft和社區)可以一起工作並一起擴展,從而改善了所有方案。
這個新的項目和方向改變了.NET的規則。使用.NET 5,無論您要構建哪種類型的應用程序,您的代碼和項目文件都將具有相同的外觀。您將可以使用每個應用程序訪問相同的運行時,API和語言功能。這包括幾乎每天都致力於corefx的新性能改進。