欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

2)NET CORE特性与优势

程序员文章站 2022-07-04 23:42:19
先看看netcore有哪些特性,哪些优点,与.net frameworkd 差异吧: l 跨平台: 可以在 Windows、macOS 和 Linux 操作系统上运行。 l 跨体系结构保持一致: 在多个体系结构(包括 x64、x86 和 ARM)上以相同的行为运行代码。 l 命令行工具: 包括可用于 ......

 先看看netcore有哪些特性,哪些优点,与.net frameworkd 差异吧:

跨平台: 可以在 windows、macos 和 linux 操作系统上运行。

跨体系结构保持一致: 在多个体系结构(包括 x64、x86 和 arm)上以相同的行为运行代码。

命令行工具: 包括可用于本地开发和持续集成方案中的易于使用的命令行工具。

部署灵活: 可以包含在应用或已安装的并行(用户或系统范围安装)中。 可搭配 docker 容器使用。

兼容性: .net core 通过 .net standard与 .net framework、xamarin 和 mono 兼容。

开放源代码: .net core 平台是开放源代码,使用 mit 和 apache 2 许可证。 .net core 是一个 .net foundation 项目。

由 microsoft 支持: .net core 由 microsoft 依据 .net core 支持提供支持。

 

 api

.net core 公开了多种方案的 api,以下介绍了几种:

l  基元类型,例如  和 。

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 包括以下部分

.net core runtime:提供类型系统、程序集加载、垃圾回收器、本机互操作和其他基本服务。

            .net core 框架库提供基元数据类型、应用编写类型和基本实用程序。

asp.net runtime:提供框架以生成基于新式云的 internet 连接的应用程序,例如 web 应用、iot 应用以及移动后端。

.net core cli 工具和语言编译器(roslyn 和 f#):提供 .net core 开发人员体验。

l  :用于启动 .net core 应用和 cli 工具。 它选择运行时并托管运行时,提供程序集加载策略并启动应用和工具。

这些组件采用以下方式分布:

.net core runtime -- 包括 .net core 运行时和框架库。

asp.net core runtime -- 包括 asp.net core 和 .net core 运行时以及框架库。

.net core sdk -- 包括 .net cli 工具、asp.net core 运行时以及 .net core 运行时和框架。

 

.net core 和 .net framework 的主要差异在于:

应用模型 -- .net core 不支持所有 .net framework 应用模型。 具体而言,它不支持 asp.net web 窗体和 asp.net mvc,但支持 asp.net core mvc。 已宣布 .net core 3 将支持 wpf 和 windows 窗体

api -- .net core 包含 .net framework 基类库的一个大型子集,但具有不同的组成要素(程序集名称不同;类型上公开的成员在关键用例中不同)。 这些差异需要在某些情况下更改 .net core 的端口源(请参阅 )。 .net core 实施 .net standard api 规范。

子系统 -- .net core 实现 .net framework 中子系统的子级,目的是实现更简单的实现和编程模型。 例如,不支持代码访问安全性 (cas),但支持反射。

平台 -- .net framework 支持 windows 和 windows server,而 net core 还支持 macos 和 linux。

开源 -- .net core 是开源的,而 .net framework 的只读子集是开源的。

 

整体上看netcore有很好的发展前景,基于standard接口的,让我们用起来不会那么陌生。一些语法语法糖完全跟net framework一样。很多组件类库重新模块化,更加轻巧,性能更优(听说重新编译的vs性能提升几百倍?)   那么 不多说 干起来吧!