先看看netcore有哪些特性,哪些優點,與.net frameworkd 差異吧: l 跨平臺: 可以在 Windows、macOS 和 Linux 操作系統上運行。 l 跨體繫結構保持一致: 在多個體繫結構(包括 x64、x86 和 ARM)上以相同的行為運行代碼。 l 命令行工具: 包括可用於 ...
先看看netcore有哪些特性,哪些優點,與.net frameworkd 差異吧:
l 跨平臺: 可以在 Windows、macOS 和 Linux 操作系統上運行。
l 跨體繫結構保持一致: 在多個體繫結構(包括 x64、x86 和 ARM)上以相同的行為運行代碼。
l 命令行工具: 包括可用於本地開發和持續集成方案中的易於使用的命令行工具。
l 部署靈活: 可以包含在應用或已安裝的並行(用戶或系統範圍安裝)中。 可搭配 Docker 容器使用。
l 相容性: .NET Core 通過 .NET Standard與 .NET Framework、Xamarin 和 Mono 相容。
l 開放源代碼: .NET Core 平臺是開放源代碼,使用 MIT 和 Apache 2 許可證。 .NET Core 是一個 .NET Foundation 項目。
l 由 Microsoft 支持: .NET Core 由 Microsoft 依據 .NET Core 支持提供支持。
API
.NET Core 公開了多種方案的 API,以下介紹了幾種:
l 集合:比如 System.Collections.Generic.List<T> 和 System.Collections.Generic.Dictionary<TKey,TValue>。
l 實用程式類型,例如 System.Net.Http.HttpClient 和 System.IO.FileStream。
l 數據類型,例如 System.Data.DataSet 和 DbSet。
l 高性能類型,例如 System.Numerics.Vector 和 Pipelines。
.NET Core 通過實現 .NET Standard 規範提供 .NET Framework 和 Mono API 的相容性。
.NET Core 包括以下部分:
l .NET Core runtime:提供類型系統、程式集載入、垃圾回收器、本機互操作和其他基本服務。
.NET Core 框架庫提供基元數據類型、應用編寫類型和基本實用程式。
l ASP.NET runtime:提供框架以生成基於新式雲的 Internet 連接的應用程式,例如 Web 應用、IoT 應用以及移動後端。
l .NET Core CLI 工具和語言編譯器(Roslyn 和 F#):提供 .NET Core 開發人員體驗。
l dotnet 工具:用於啟動 .NET Core 應用和 CLI 工具。 它選擇運行時並托管運行時,提供程式集載入策略並啟動應用和工具。
這些組件採用以下方式分佈:
l .NET Core runtime -- 包括 .NET Core 運行時和框架庫。
l ASP.NET Core runtime -- 包括 ASP.NET Core 和 .NET Core 運行時以及框架庫。
l .NET Core SDK -- 包括 .NET CLI 工具、ASP.NET Core 運行時以及 .NET Core 運行時和框架。
.NET Core 和 .NET Framework 的主要差異在於:
l 應用模型 -- .NET Core 不支持所有 .NET Framework 應用模型。 具體而言,它不支持 ASP.NET Web 窗體和 ASP.NET MVC,但支持 ASP.NET Core MVC。 已宣佈 .NET Core 3 將支持 WPF 和 Windows 窗體。
l API -- .NET Core 包含 .NET Framework 基類庫的一個大型子集,但具有不同的組成要素(程式集名稱不同;類型上公開的成員在關鍵用例中不同)。 這些差異需要在某些情況下更改 .NET Core 的埠源(請參閱 microsoft/dotnet-apiport)。 .NET Core 實施 .NET Standard API 規範。
l 子系統 -- .NET Core 實現 .NET Framework 中子系統的子級,目的是實現更簡單的實現和編程模型。 例如,不支持代碼訪問安全性 (CAS),但支持反射。
l 平臺 -- .NET Framework 支持 Windows 和 Windows Server,而 NET Core 還支持 macOS 和 Linux。
l 開源 -- .NET Core 是開源的,而 .NET Framework 的只讀子集是開源的。
整體上看NETCORE有很好的發展前景,基於standard介面的,讓我們用起來不會那麼陌生。一些語法語法糖完全跟net framework一樣。很多組件類庫重新模塊化,更加輕巧,性能更優(聽說重新編譯的VS性能提升幾百倍?) 那麼 不多說 幹起來吧!