日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

一文看懂:什么是.NET Core以及.NET Core能做什么?

 dotNet全棧開發(fā) 2021-01-06

我們都知道.NET Core是一個(gè)可以用來構(gòu)建現(xiàn)代、可伸縮和高性能的跨平臺(tái)軟件應(yīng)用程序的通用開發(fā)框架。可用于為Windows、Linux和MacOS構(gòu)建軟件應(yīng)用程序。

與其他軟件框架不同,.NET Core是最通用的框架,可用于構(gòu)建各種軟件,包括Web應(yīng)用程序、移動(dòng)應(yīng)用程序、桌面應(yīng)用程序、云服務(wù)、微服務(wù)、API、游戲和物聯(lián)網(wǎng)應(yīng)用程序。與其他框架不同,.NET Core并不局限于單一的編程語言,它支持C#、VB.NET、F#、XAML和TypeScript。這些編程語言都是開源的,由獨(dú)立的社區(qū)管理。

.NET Core提供了最先進(jìn)、最成熟和最廣泛的類庫、公共API、多語言支持和工具。借助于Visual Studio 2019和Visual Studio Code 這些最先進(jìn)和最現(xiàn)代的開發(fā)工具,使得.NET Core成為開發(fā)人員最高效的平臺(tái)之一。

注: 微軟最近宣發(fā)布.NET 5,這是.NET Core的未來。將來,.NET Core將改名為.NET,下一個(gè)版本的.NET Core將是.NET 6.0。

.NET Core的歷史

.NET Core是由Microsoft開發(fā),目前在.NET Foundation(一個(gè)非營利的開源組織)下進(jìn)行管理。.NET Core是用C#和C++編寫的,并采用MIT協(xié)議作為開源協(xié)議。第一個(gè)版本的.NET Core 1.0是在2016年發(fā)布的,功能有限。NET Core 2.0于2017年8月14日發(fā)布。在這個(gè)版本中發(fā)布的兩個(gè)核心框架是ASP.NET Core2.0和 Entity Framework Core 2.0。

.NET Core的特點(diǎn)

.NET Core的主要特性包括開源、跨平臺(tái)、現(xiàn)代、靈活、輕量級(jí)、快速、友好、可共享,以及為未來的軟件開發(fā)而構(gòu)建的。 .NET Core是免費(fèi)和開源的

.NET Core平臺(tái)是免費(fèi)的、開源的。.NET Core的源代碼托管在Github上。任何開發(fā)人員都可以參與到.NET Core的開發(fā)。有數(shù)千名參與.NET Core開發(fā)的活躍開發(fā)人員正在改進(jìn)特性、添加新特性以及修復(fù)bug和問題。

.NET Core由一個(gè)名為.NET Foundation的獨(dú)立的非營利組織管理。60,000多名開發(fā)人員和3,700多家公司正在為.NET生態(tài)系統(tǒng)做出貢獻(xiàn)。

.NET Core是免費(fèi)的,并且采用MIT和Apache協(xié)議作為開源協(xié)議。對(duì)商業(yè)十分友好。 https://github.com/dotnet/core

.NET Core是跨平臺(tái)的

.NET Core支持并運(yùn)行在Windows、MacOS和Linux操作系統(tǒng)上。.NET Core跨體系結(jié)構(gòu)(包括x64、x86和ARM)是一致的??梢詫?dǎo)入相同的程序集和庫,并在多個(gè)平臺(tái)上使用。這些程序集和庫都可以使用如下的.NET語言進(jìn)行構(gòu)建,如:C#、VB.NET或F#。

.NET Core是可共享的

.NET Core使用一種用.NET Standard編寫的一致API模型,這種模型對(duì)所有.NET應(yīng)用程序都是通用的。相同的API或庫可以與多種語言的多個(gè)平臺(tái)一起使用。

.NET Core是現(xiàn)代的

與一些較舊的框架不同,.NET Core旨在解決當(dāng)今的現(xiàn)代需求,包括移動(dòng)友好、構(gòu)建一次在任何地方運(yùn)行、可伸縮和高性能。.NET Core旨在構(gòu)建針對(duì)各種設(shè)備的應(yīng)用程序,包括物聯(lián)網(wǎng)和游戲機(jī)。

.NET在C# 8的幫助下支持現(xiàn)代語言結(jié)構(gòu),如面向?qū)ο蠛湍K化編程、泛型、集合、lambdas、語言集成查詢(LINQ)和異步編程,這使開發(fā)人員更加高效。在這里了解更多關(guān)于C#7和C#8特性的信息,

https://docs.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-7

https://docs.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-8

Visual Studio 2019和Visual Studio Code是世界上最先進(jìn)和最現(xiàn)代的集成開發(fā)環(huán)境。這兩個(gè)IDES都支持當(dāng)今的現(xiàn)代需求,并且專注于干凈、速度和生產(chǎn)力。 在這里了解有關(guān)VisualStudio 2019功能的更多信息: https://www./article/visual-studio-2019-new-features/

.NET Core是快速的

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

根據(jù)TechEmpowers發(fā)布的一份報(bào)告,.NET Core比任何其他框架都要快得多。 TechEmpower基準(zhǔn)測(cè)試通過對(duì)多個(gè)Web應(yīng)用程序框架做如下比較:數(shù)據(jù)庫的單表查詢,多表查詢,文件訪問,數(shù)據(jù)更新,明文和JSON序列化等任務(wù)進(jìn)行比較。

.NET Core是輕量級(jí)的

.NET Core是輕量級(jí)的。.NET Core可以包含在您的應(yīng)用程序中,也可以安裝在并行用戶、機(jī)器范圍內(nèi)或服務(wù)器上。.NET Core可以部署在Docker容器中。

https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/docker/?view=aspnetcore-2.2

.NET Core是友好的

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

我們可以使用.NET Core構(gòu)建哪些類型的應(yīng)用程序?

.NET Core是一個(gè)通用的軟件開發(fā)框架。它允許開發(fā)人員構(gòu)建各種軟件,包括Web,桌面,移動(dòng),云,游戲,物聯(lián)網(wǎng)等。

.NET Core更適合跨平臺(tái)需求。.NET Core應(yīng)用程序支持在Windows,Linux和macOS上運(yùn)行。Linux和macOS上也都支持Microsoft流行的開源代碼編輯器Visual Studio Code。VS Code支持代碼編輯器的現(xiàn)代需求,包括智能提醒和調(diào)試。大多數(shù)第三方編輯器(如Sublime,Emacs和VI)都支持.NET Core。

Web應(yīng)用

ASP.NET Core是.NET Core生態(tài)系統(tǒng)的核心組件。ASP.NET Core是一個(gè)用于構(gòu)建網(wǎng)頁的框架。ASP.NET Core基于MVC架構(gòu),并提供用于構(gòu)建Web的通用庫。開始使用ASP.NET Core Razor是一個(gè)使用C#和TypeScript構(gòu)建動(dòng)態(tài)網(wǎng)頁的新框架。Razor是一種改變游戲規(guī)則的技術(shù),它允許C#開發(fā)人員用C#構(gòu)建Web應(yīng)用程序。

移動(dòng)開發(fā)

移動(dòng)開發(fā)是.NET Core的關(guān)鍵產(chǎn)品。Xamarin是一套使用C#構(gòu)建跨平臺(tái)移動(dòng)應(yīng)用程序的工具和庫。Xamarin允許開發(fā)人員在共享的.NET代碼庫上為IOS、Android、Windows和MacOS構(gòu)建本地應(yīng)用程序。

桌面應(yīng)用程序

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

Windows窗體是一種構(gòu)建Windows桌面應(yīng)用程序的技術(shù)。Windows窗體是.NET Framework的首批組件之一。

WPF(Windows Presentation Foundation)是一種較新的構(gòu)建Windows桌面應(yīng)用程序的技術(shù)。WPF是作為.NET Framework版本的一部分發(fā)布的

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

微服務(wù)和容器

微服務(wù)是一種新的設(shè)計(jì)模式,它允許開發(fā)人員構(gòu)建軟件服務(wù)的小模塊,這些模塊可以使用定義良好的契約相互通信。微服務(wù)使開發(fā)、測(cè)試和部署應(yīng)用程序的獨(dú)立部分更加容易。一旦部署完畢,每個(gè)微服務(wù)都可以根據(jù)需要獨(dú)立地進(jìn)行縮放。.NET Core支持微服務(wù)體系結(jié)構(gòu),它允許跨平臺(tái)服務(wù)與.NET Core一起工作,包括使用.NET Framework、Java、Ruby或其他開發(fā)的服務(wù)。

容器是今天的越野車。.NET Core的模塊化、輕量級(jí)和靈活性使得將.NET Core應(yīng)用程序部署到容器中變得更加容易。容器把一個(gè)應(yīng)用程序的所有的配置文件和依賴關(guān)系,包含在一個(gè)單獨(dú)的、小型的和獨(dú)立的軟件部署單元中。容器可以部署在任何平臺(tái)、云、Linux和Windows上。.NET Core與Docker和Azure Kubernetes服務(wù)都很好地協(xié)作。

云應(yīng)用程序

云應(yīng)用程序現(xiàn)在越來越受歡迎。Azure支持各種云應(yīng)用程序。.NET Core和C#應(yīng)用程序可以通過Visual Studio 2019部署在Azure上。

https://www./article/create-deploy-an-asp-net-core-web-app-in-azure/

物聯(lián)網(wǎng)

物聯(lián)網(wǎng)應(yīng)用正在增長(zhǎng)。.NET Core支持通過UWP框架為運(yùn)行Windows 10 IoT Core的物聯(lián)網(wǎng)設(shè)備進(jìn)行物聯(lián)網(wǎng)開發(fā)。UWP可用于構(gòu)建在由Raspberry Pi,MinnowBoard MAX,DragonBoard 410c等提供支持的物聯(lián)網(wǎng)上運(yùn)行的應(yīng)用程序。

機(jī)器學(xué)習(xí)

機(jī)器學(xué)習(xí)是軟件開發(fā)人員日益增長(zhǎng)的領(lǐng)域。 https://dotnet.microsoft.com/apps/machinelearning-ai/ml-dotnet

游戲

Unity是最受歡迎的游戲開發(fā)框架之一。C#和UWP用于構(gòu)建移動(dòng),桌面,控制臺(tái),電視,VR,AR和Web游戲。

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

最新版本的.NET Core 3.0剛剛發(fā)布。C#8和Windows桌面是這個(gè)版本的兩個(gè)主要新增部分。

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

Windows桌面是.NET Core 3.0的新增功能,允許開發(fā)人員使用Windows窗體,WPF和UWP構(gòu)建Windows桌面應(yīng)用程序。 以下是.NET Core 3.0中的其他功能和增強(qiáng)功能列表,

  • Windows桌面的MSIX部署
  • MSIX是一種新的Windows應(yīng)用程序包格式。它可用于將.NET Core 3.0桌面應(yīng)用程序部署到Windows 10。
  • 快速內(nèi)置JSON支持
  • IEEE浮點(diǎn)改進(jìn)
  • .NET平臺(tái)依賴內(nèi)在函數(shù)
  • 依賴于框架的可執(zhí)行文件支持
  • 構(gòu)建副本依賴項(xiàng)
  • 裝配卸載
  • Windows Native Interop
  • Linux上的TLS 1.3和OpenSSL 1.1.1
  • 改進(jìn)的密碼學(xué)
  • 適用于Linux的SerialPort
  • ARM64 Linux支持
  • GPIO支持Raspberry Pi

.NET 5.0還帶來了大量的改進(jìn)

微軟強(qiáng)調(diào)了一些比較顯著的變化,包括一些性能上的改進(jìn),微軟之前在這里進(jìn)行了探討。 以下是這個(gè)版本的所有亮點(diǎn):

  • .NET 5.0 已經(jīng)部署到 dot.net 和 Bing.com 托管數(shù)月,已經(jīng)得到了實(shí)戰(zhàn)檢驗(yàn)。
  • 很多組件的性能都得到了極大的提高。.NET 5.0 中 ARM64 的性能 和 GRPC 等都有改善
  • C# 9和F# 5提供了新的語言改進(jìn),如C# 9的頂層程序和記錄,而F# 5則提供了交互式編程和.NET上功能編程的性能提升。
  • .NET庫對(duì)Json序列化、正則表達(dá)式和HTTP(HTTP 1.1、HTTP/2)的性能有所提升。它們現(xiàn)在也被完全注釋為可空性。
  • 由于GC、分層編譯等方面的完善,P95延遲有所下降。
  • 應(yīng)用部署選項(xiàng)更好了,有了ClickOnce客戶端應(yīng)用發(fā)布、單文件應(yīng)用、容器鏡像尺寸減小,并增加了Server Core容器鏡像。
  • 平臺(tái)范圍擴(kuò)大,增加了WindowsArm64和WebAssembly。
  • 一個(gè)值得注意的變化是,.NET 5.0應(yīng)用可以原生運(yùn)行在ARM64 Windows設(shè)備上,消除了仿真帶來的一些性能障礙。然而,在這個(gè)版本中,Windows 桌面組件并不能用于ARM64設(shè)備--這計(jì)劃在.NET 5.0的服務(wù)更新中進(jìn)行。

參考文獻(xiàn) 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./article/what-is-dot-net-core/

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

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多