歡迎光臨
每天分享高質量文章

通俗易懂,什麼是.NET Core以及.NET Core能做什麼

作者:依樂祝
原文地址:https://www.cnblogs.com/yilezhu/p/10880884.html

我們都知道.NET Core是一個可以用來構建現代、可伸縮和高性能的跨平臺軟體應用程式的通用開發框架。可用於為Windows、Linux和MacOS構建軟體應用程式。與其他軟體框架不同,.NET Core是最通用的框架,可用於構建各種軟體,包括Web應用程式、移動應用程式、桌面應用程式、雲服務、微服務、API、游戲和物聯網應用程式。與其他框架不同,.NET Core並不局限於單一的編程語言,它支持C#、VB.NET、F#、XAML和TypeScript。這些編程語言都是開源的,由獨立的社區管理。

.NET Core提供了最先進、最成熟和最廣泛的類庫、公共API、多語言支持和工具。借助於Visual Studio 2019和Visual Studio Code 這些最先進和最現代的開發工具,使得.NET Core成為開發人員最高效的平臺之一。

註: 微軟最近宣佈了.NET 5,這是.NET Core的未來。將來,.NET Core將改名為.NET,下一個版本的.NET Core將是.NET 5.0。

.NET Core的歷史

.NET Core是由Microsoft開發,目前在.NET Foundation(一個非營利的開源組織)下進行管理。.NET Core是用C#和C++編寫的,並採用MIT協議作為開源協議。第一個版本的.NET Core 1.0是在2016年發佈的,功能有限。NET Core 2.0於2017年8月14日發佈。在這個版本中發佈的兩個核心框架是ASP.NET Core2.0和 Entity Framework Core 2.0。下一個穩定版本.NET Core 2.1和2.2於2018年5月和12月發佈。.NET Core的當前版本為3.0.0,並且在2019年5月6日發佈了第5個預覽版。

下表總結了.NET Core的主要里程碑:

版本 發佈日期 關鍵特征/產品
.NET Core 1.0 6/27/2016 VisualStudio 2015 Update 3支持的.NET Core的初始版本。
.net Core 1.1.1 3/7/2017 .NET Core Tools 1.0受VisualStudio 2017支持
.NET Core 2.0 8/14/2017 VisualStudio 2017 15.3,ASP.NETCore 2.0,物體框架2.0
.NET Core 2.1 5/30/2018 ASP.NET Core 2.1,EF Core 2.1
.NET Core 2.2 12/4/2018 ASP.NET Core 2.2,EF Core 2.2
.NET Core 3.0預覽3 3/6/2019 通過VisualStudio2019支持ASP.NET Core 3.0、EF Core3.0、UWP、Windows窗體、WPF。

.NET Core的特點

.NET Core的主要特性包括開源、跨平臺、現代、靈活、輕量級、快速、友好、可共享,以及為未來的軟體開發而構建的。

.NET Core是免費和開源的

.NET Core平臺是免費的、開源的。.NET Core的原始碼托管在Github上。任何開發人員都可以參與到.NET Core的開發。有數千名參與.NET Core開發的活躍開發人員正在改進特性、添加新特性以及修複bug和問題。

.NET Core由一個名為.NET Foundation的獨立的非營利組織管理。60,000多名開發人員和3,700多家公司正在為.NET生態系統做出貢獻。

.NET Core是免費的,並且採用MIT和Apache協議作為開源協議。對商業十分友好。不像某Java

瞭解更多信息並下載.NET CoreGitHub.

.NET Core是跨平臺的

.NET Core支持並運行在Windows、MacOS和Linux操作系統上。.NET Core跨體系結構(包括x64、x86和ARM)是一致的。可以匯入相同的程式集和庫,併在多個平臺上使用。這些程式集和庫都可以使用如下的.NET語言進行構建,如:C#、VB.NET或F#。

.NET Core是可共享的

.NET Core使用一種用.NET Standard編寫的一致API模型,這種模型對所有.NET應用程式都是通用的。相同的API或庫可以與多種語言的多個平臺一起使用。

.NET Core是現代的

與一些較舊的框架不同,.NET Core旨在解決當今的現代需求,包括移動友好、構建一次在任何地方運行、可伸縮和高性能。.NET Core旨在構建針對各種設備的應用程式,包括物聯網和游戲機。

.NET在C# 8的幫助下支持現代語言結構,如面向物件和模塊化編程、泛型、集合、lambdas、語言集成查詢(LINQ)和異步編程,這使開發人員更加高效。在這裡瞭解更多關於C#7和C#8特性的信息,

  • C#7.1、7.2和7.3新特性
  • C#8特性

Visual Studio 2019和Visual Studio Code是世界上最先進和最現代的集成開發環境。這兩個IDES都支持當今的現代需求,並且專註於乾凈、速度和生產力。在這裡瞭解有關VisualStudio 2019功能的更多信息:VisualStudio 2019新特性.

.NET Core是快速的

.NET Core 3.0 是快速的。與.NET Framework和.NET Core 2.2及以前的版本相比,.NET Core 3.0的速度很快。.NET Core比其他服務器端框架(如Java Servlet和Node.js)快得多。

根據TechEmpowers發佈的一份報告,.NET Core比任何其他框架都要快得多。 TechEmpower基準測試通過對多個Web應用程式框架做如下比較:資料庫的單表查詢,多表查詢,檔案訪問,資料更新,明文和JSON序列化等任務進行比較。

.NET Core是輕量級的

.NET Core是輕量級的。.NET Core可以包含在您的應用程式中,也可以安裝在並行用戶、機器範圍內或服務器上。.NET Core可以部署在Docker容器中。

  • 開始使用ASP.NETCore和Docker

.NET Core是友好的

.NET Core通過.NET Standard與.NET Framework,Xamarin和Mono兼容。 .NET Core還支持使用各種流行的Web框架和庫,如React,Angular和JavaScript。 TypeScript是.NET Core和Visual Studio生態系統的關鍵組件之一。

我們可以使用.NET Core構建哪些型別的應用程式?

.NET Core是一個通用的軟體開發框架。它允許開發人員構建各種軟體,包括Web,桌面,移動,雲,游戲,物聯網等。

.NET Core更適合跨平臺需求。.NET Core應用程式支持在Windows,Linux和macOS上運行。Linux和macOS上也都支持Microsoft流行的開原始碼編輯器Visual Studio Code。VS Code支持代碼編輯器的現代需求,包括智慧提醒和除錯。大多數第三方編輯器(如Sublime,Emacs和VI)都支持.NET Core。

Web應用

ASP.NET Core是.NET Core生態系統的核心組件。ASP.NET Core是一個用於構建網頁的框架。ASP.NET Core基於MVC架構,並提供用於構建Web的通用庫。開始使用ASP.NET Core

Razor是一個使用C#和TypeScript構建動態網頁的新框架。Razor是一種改變游戲規則的技術,它允許C#開發人員用C#構建Web應用程式。

移動開發

移動開發是.NET Core的關鍵產品。Xamarin是一套使用C#構建跨平臺移動應用程式的工具和庫。Xamarin允許開發人員在共享的.NET代碼庫上為IOS、Android、Windows和MacOS構建本地應用程式。

桌面應用程式

.NET Core提供各種框架和工具來構建桌面應用程式。Windows窗體、WPF、UWP和Xamarin是構建桌面應用程式的四個主要框架。.NET Core還支持這些框架之間的互操作性。

Windows窗體是一種構建Windows桌面應用程式的技術。Windows窗體是.NET Framework的首批組件之一。

WPF(Windows Presentation Foundation)是一種較新的構建Windows桌面應用程式的技術。WPF是作為.NET Framework版本的一部分發佈的

瞭解有關wpf的更多信息這裡.

UWP是一種較新的技術,是在Windows 8之後發佈的。如今,UWP已經成熟。UWP使用XAML作為表示層(UI)和C#作為後端編程。但是,貌似微軟已經宣佈了他的死亡。

微服務和容器

微服務是一種新的設計樣式,它允許開發人員構建軟體服務的小模塊,這些模塊可以使用定義良好的契約相互通信。微服務使開發、測試和部署應用程式的獨立部分更加容易。一旦部署完畢,每個微服務都可以根據需要獨立地進行縮放。.NET Core支持微服務體系結構,它允許跨平臺服務與.NET Core一起工作,包括使用.NET Framework、Java、Ruby或其他開發的服務。

容器是今天的越野車。.NET Core的模塊化、輕量級和靈活性使得將.NET Core應用程式部署到容器中變得更加容易。容器把一個應用程式的所有的配置檔案和依賴關係,包含在一個單獨的、小型的和獨立的軟體部署單元中。容器可以部署在任何平臺、雲、Linux和Windows上。.NET Core與Docker和Azure Kubernetes服務都很好地協作。

雲應用程式

雲應用程式現在越來越受歡迎。Azure支持各種雲應用程式。.NET Core和C#應用程式可以通過Visual Studio 2019部署在Azure上。

  • 在Azure中創建和部署ASP.NET Core Web應用程式

物聯網

物聯網應用正在增長。.NET Core支持通過UWP框架為運行Windows 10 IoT Core的物聯網設備進行物聯網開發。UWP可用於構建在由Raspberry Pi,MinnowBoard MAX,DragonBoard 410c等提供支持的物聯網上運行的應用程式。

機器學習

機器學習是軟體開發人員日益增長的領域。

參考微軟官方文件

游戲

Unity是最受歡迎的游戲開發框架之一。C#和UWP用於構建移動,桌面,控制台,電視,VR,AR和Web游戲。

.NET Core 3.0中的新增的功能有哪些?

最新版本的.NET Core 3.0剛剛發佈。C#8和Windows桌面是這個版本的兩個主要新增部分。

C#8是C#語言的最新版本。C#8是.NET Core的一部分。C#8增加了新功能,包括

  • C#8功能

Windows桌面是.NET Core 3.0的新增功能,允許開發人員使用Windows窗體,WPF和UWP構建Windows桌面應用程式。

以下是.NET Core 3.0中的其他功能和增強功能串列,

  • Windows桌面的MSIX部署
  • MSIX是一種新的Windows應用程式包格式。它可用於將.NET Core 3.0桌面應用程式部署到Windows 10。
  • 快速內置JSON支持
  • IEEE浮點改進
  • .NET平臺依賴內在函式
  • 依賴於框架的可執行檔案支持
  • 構建副本依賴項
  • 裝配卸載
  • Windows Native Interop
  • Linux上的TLS 1.3和OpenSSL 1.1.1
  • 改進的密碼學
  • 適用於Linux的SerialPort
  • ARM64 Linux支持
  • GPIO支持Raspberry Pi
    參考
    https://docs.microsoft.com/en-us/dotnet/core/whats-new/dotnet-core-3-0

參考文獻

  • https://docs.microsoft.com/en-us/dotnet/core/
  • https://dotnet.microsoft.com/
  • https://www.c-sharpcorner.com/article/what-is-dot-net-core/
赞(0)

分享創造快樂