.NETのコアの概要

まず、.NETのコアは何ですか

.NETのコアは、ウィンドウの開発と展開をサポートすることです担体は、プラットフォームを横断することを、オープンソースの一般的な開発フレームワーク、MacOSの、Linuxや他のシステムであり、ハードウェアデバイス、クラウドサービス、物事の組込み/スキームで使用することができます。

GitHubの、上の.NETのコアのソースコードは、共同で、Microsoftの公式やコミュニティでサポートされています。

.NETのコアの目標は、クロスプラットフォームの.NETプラットフォームを開発することであるため、.NETのコアは、.NET Frameworkクラスライブラリの一部が含まれています(3.0の後に、.NETのコアには、.NET Frameworkのから移植され、もはや関数Aはありません)、制御パッケージ管理nuget:ただし、.NET Frameworkは、.NETのコア差がパケット化された使用(パッケージ)管理は、アプリケーションは、それが、パッケージングは​​、DLLパッケージングに必要であれば前のカプセル化のために、所望の成分を得るために必要台湾の実行:DOTNETパック、.nupkgファイルを結果としては、パッケージングプロセスを完了するために、それをインストールし、パッケージディレクトリにコピーされます。

第二に、なぜ.NETのコアを理解する必要があります

あなたは、.NET開発者である、またはあなたが.NETを学んでいる、またはあなたは.NETの開発の将来の方向に従事しようとする場合、.NETのコアが必要不可欠である場合は今、スキルであると言うことができます。

.NETのコア.NETは、それはまた、.NET開発で、.NETのコアは、.NETのコアが徐々に開発について説明し、多くの.NETポジションの採用ニーズ、に登場した、将来的に大きな転換点です。

三、.NETのコアの特性

図1に示すように、クロスプラットフォーム

これは、Windows、MacOSの、およびLinuxオペレーティングシステム上で実行することができます。

2、クロスアーキテクチャ

(のx64、x86とARMを含む)複数のアーキテクチャに同じ挙動にコードを実行します。

3、コマンドラインのサポート

簡単にローカルの開発とラインツールを使用して継続的インテグレーションスキームのためのコマンドを含みます。

図4に示すように、柔軟な展開

(例えばWindowsシステム用として、IIS、Windowsサービスおよびコンソール)、別のアプリケーション、ユーザー環境またはコンピュータ環境に含めることができますが、また、ドッカーコンテナと。

5、互換性

.NET Frameworkの、Xamarinと.NETの標準によって、.NETのコアLinux上で.NETの専用使用を作成するためのオープンソースプロジェクトとモノ((クロスプラットフォーム開発フレームワークは、目標は、iOS、AndroidとWindows Phoneのネイティブアプリケーションを開発するためにC#を使用することです) )互換。

6、オープンソース

.NETのコアは、MITオープンソースライセンスとApache 2ライセンスを使用したオープンプラットフォームです。

四、.NET Frameworkとの関係

.NETコア&.NET Frameworkの.NET標準ライブラリが実現され、前者は.NET標準ライブラリ外部.NET Coreおよび.NET Frameworkは、独自の特定の実装を持って達成することに加えて、Windowsでユニークであるクロスプラットフォームです。

ネットコアの.NET標準ライブラリは、インターフェイスのセットを定義クロスオペレーティングシステムへの鍵であり、各オペレーティングシステムは、独自の実装があり、言えば、.NETコア動的、nugetによって現在のオペレーティング・システムを実現するためにダウンロードすることができクロスオペレーティングシステムを実現するためです。

ビューの今後の開発のポイントの観点から、.NETのコア.NET Frameworkは製品の次の世代である、.NET Frameworkバージョン4.8は、まだ.NET Coreバージョン3.1です。Microsoftが発表した、.NETのコア3.1は、.NET 5である.NET 5の次のバージョンであり、.NETのコアの次のバージョンです。

 

.NET Frameworkおよび.NETコアアーキテクチャ図

 

五、.NETのコアのロードマップ

.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.1。

下表总结了.NET Core的主要里程碑:

版本

发布日期

关键特征/产品

.NET Core 1.0

6/27/2016

Visual Studio 2015 Update 3支持的.NET Core的初始版本。

.net Core 1.1.1

3/7/2017

.NET Core Tools 1.0受Visual Studio 2017支持

.NET Core 2.0

8/14/2017

Visual Studio 2017 15.3,ASP.NET Core 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 3.1

19年8月

对3.0新增功能的优化

六、.NET Core 3.0 新增功能

1、C# 8.0 也是该版本的一部分,它包含可为空引用类型功能、异步流。

2、支持 WinForms 和 WPF

这是否意味着它在Linux和Mac上运行?

不!由于WinForms和WPF在后台仅使用Windows技术,因此无法在Linux或Mac上运行,它依赖于Windows。在.NET Core上运行它的意义在于提升性能并且独立于任何框架。.NET Core针对性能进行了优化,因此您可以在云中运行超快的Web应用程序。.NET Core也独立于计算机上安装的框架。只需将运行时与应用程序一起部署即可。

3、ASP.NET Core 3.0

4、EF Core 3.0

5、.NET Core 是在云原生背景下诞生一个开发平台,而在.NET Core 3.0 更加完善,具体内容:

  • 体积更小:对于微服务分布式架构而言,更小的体积意味着更少的下载带宽,更快的分发下载速度,.NET Core 的镜像体积都很小。
  • 启动速度更快:对于传统单体应用,启动速度与运行效率相比不是一个关键的指标。原因是,这些应用重启和发布频率相对较低。然而对于需要快速迭代、水平扩展的微服务应用而言,更快的的启动速度就意味着更高的交付效率,和更加快速的回滚。尤其当你需要发布一个有数百个副本的应用时,缓慢的启动速度就是时间杀手。对于 Serverless 应用而言,端到端的冷启动速度则更为关键,即使底层容器技术可以实现百毫秒资源就绪,如果应用无法在 500ms 内完成启动,用户就会感知到访问延迟。
  • 占用资源更少:运行时更低的资源占用,意味着更高的部署密度和更低的计算成本。.NET Core的 CLR启动速度非常快,降低启动时资源消耗,可以减少资源争抢。
  • 支持水平扩展:.NET Core 3.0 更好的支持Docker资源限制,官方团队也在努力让.NET Core成为真正的容器运行时,使其在低内存环境中具有容器感知功能并高效运行。随着内存成本的下降和虚拟化的流行,大内存配比已经成为趋势。所以我们一般是采用水平扩展的方式,同时部署多个应用副本,在一个计算节点中可能运行一个应用的多个副本来提升资源利用率。

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

 

七、.NET Core 3.1 变化

.NET Core 3.1 中的更改​​主要集中在 Blazor 和 Windows Desktop,这是 .NET Core 3.0 中的两个新增特性

(Blazor是一个WebUI框架,可通过WebAssembly在任意浏览器中运行.Net.)

NET Core 3.1要求Visual Studio 2019 16.4才能充分利用其所有功能。.NET Core 3.1在早期版本的Visual Studio中将无法正常工作。

八、.NET Core构建哪些类型的应用程序

.NET Core是一个通用的软件开发框架。它允许开发人员构建各种软件,包括Web,桌面,移动,云,游戏,物联网等。与其他框架不同,.NET Core并不局限于单一的编程语言,它支持C#、VB.NET、F#、XAML和TypeScript。

 

.NET Core更适合跨平台需求。.NET Core应用程序支持在Windows,Linux和macOS上运行。Linux和macOS上也都支持Microsoft流行的开源代码编辑器Visual Studio Code。VS Code支持代码编辑器的现代需求,包括智能提醒和调试。大多数第三方编辑器(如Sublime,Emacs和VI)都支持.NET Core。

おすすめ

転載: www.cnblogs.com/cuigzh/p/12106508.html