今天双11,Microsoft released.NET 5(在他们的开发博客上同时发布)。新版本的重点是改进。NET Core 3.1: 更小的单文件应用程序、对 Windows ARM64的支持以及更强大的 JsonSerializer api 是。NET 5,以及许多可观的性能改进。新的主要语言版本(c # 9和 f # 5)也是本版本的一部分。

统一的平台愿景也得到了微软首席项目经理 Richard Lander 的加强。NET Core.然而,尽管最初的范围发生了变化,。NET 5带来了许多改进。NET Core 3.1,以及一些新特性。这个版本中最相关的特性之一是增加了对 Windows ARM64的支持,支持。NET 在这些平台上本地运行。因此,像 Surface Pro x 这样的设备将能够运行 Windows 窗体、 WPF 和 ASP.NET Core 应用程序。
此版本的另一个重要特性是改进了单文件应用程序。单文件应用程序作为单个文件发布和部署,其中包括应用程序及其所有依赖项。它们也可以是自给自足的,这意味着它们有自己的。NET 运行时——这对于依赖于特定运行时版本的应用程序来说尤其有趣。.NET 5带来了更小的单文件应用程序,具有更高的内存使用效率,并且“更适合跨各种操作系统的微服务包含的应用程序”(如 Hunter 所说)。然而,必须注意的是,单文件应用程序在。NET 5主要关注于 Windows 下的 Linux 应用程序,macOS 仍然需要额外的文件(本地运行时二进制文件)。这种情况将在年重新审视。
NET 6…NET 5还包括不同领域的性能改进: 垃圾收集器(GC)得到了相当大的改进,提高了收集效率,改进了具有较高核心计数的计算机上的可伸缩性,以及许多其他微优化。该版本还为实时(JIT)编译器提供了一个新版本,包括改进的硬件内部函数(包括 ARM64)和 API 优化。罗斯林。NET 编译器平台用于编译 c # 和 Visual Basic 代码到直译语言-也得到了改进,引入了新的注重性能的分析器和 c # 源代码生成器。Source Generators 允许开发人员检查用户代码并生成可以添加到编译中的新源文件。在某些场景中,它们可以用来替换运行时反射调用和 IL 编织。
其他相关的绩效改进。NET 5包括: 正则表达式、 HTTP 1.1请求处理、 HTTP/2伸缩和字符串模式。对已经移植到的 JSON API 进行了重大的改进。3.1,但是。NET 5提供了一个更好的 JsonSerializer,具有改进的集合处理和新的缓存层。gRPC 框架也受到了特别的关注: 微软的基准测试显示了相当大的性能提升。NET Core 3.1(服务器快60% ,客户端快230%)。由于 gRPC 使用 HTTP/2作为其底层协议,新的 HTTP/2实现也部分地负责观察到的性能提高。谷歌的相关变化。Protobuf 软件包——例如增加对 modern 的支持。NET IO 类型(Span < t > ,ReadOnlySequence < t > ,和 IBufferWriter < t >)也直接影响到 gRPC 的性能。所有性能改进的全面清单。NET 5可以在这里找到。

新版本还包括缩小容器图像大小、新的容器 api 和新的目标框架名称。在。NET 5中指定了目标框架。具有 Target Framework Monikers (TFMs)的 csproj 项目文件,这些文件是用于识别项目所针对的 api 集的简短代号:

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net5.0</TargetFramework>
</PropertyGroup>

Net Core 框架也收到了新的特性、性能改进和兼容性修改。新功能包括微软的 Azure AD 认证。身份。在 SignalR 中支持并行的 hub 调用,在 ASP.NET Core API 项目中支持缺省的 Open API 规范(Swagger)。Blazor WebAssembly 的性能改进主要集中在复杂的 UI 呈现(组件虚拟化和预呈现)和 JSON 序列化。因此,Blazor WebAssembly 在。NET 5在大多数情况下比 Blazor WebAssembly 3.2快2-3倍。
最后,还有许多相关的语言更新。NET 5: c # 9专注于程序的简单性和数据不变性,带来了一些新特性,如 Records、顶级语句和改进的模式匹配。F # 5还带来了许多性能改进和两个高要求的新特性: 内插字符串和开放类型声明(类似于 c # 中的打开静态类)。5在 Jupyter notebook、 nteract 和 VSCode Notebooks 中也得到了完全支持。正如预期的那样,开发工具链也得到了更新: Visual Studio 16.8 for Windows 今天也发布了。NET 5已经包含在内) ,现在两者都支持 ClickOnce 应用程序部署。NET Core 3.1和。
根据微软的说法,。NET 5已经准备好部署到生产环境中:。NET 网站和必应网站一直在运行。NET 5自从第一个预览版发布以来,它也“已经被微软和其他公司的团队在生产和性能测试中积极使用” ,正如官方发布说明中所说。的完整发行说明。NET 5可以在这里找到,还有一个全面的列表,列出了从。3.1 to.NET 5——包括一个支持 WinRT api 的新模型——可以在这里找到。第一次预演。NET 6预计将在今年年底推出。水流。NET 开发路线图可以在这里找到。

.NET5 它来了!微软大一统时代来临!的更多相关文章

  1. “后PC”时代来临

    “后PC”时代来临 数年前,喜达屋酒店及度假村国际集团将总部搬迁至美国康涅狄格州斯坦福,这也让公司首席执行官Frits van Paasschen有机会“除尘换新”. 那么,Frits van Paa ...

  2. 2018年末--积极拥抱h5.转载 大前端时代来临,我们何去何从?

    1.大前端时代是什么? 大前端时代是WEB统一的时代,利用html5或者6甚至7,不但可以开发传统的网站,做炫酷的网页动态效果,更可以采用BS架构应用程序.开发手机端web应用.移动端Native应用 ...

  3. 火云开发课堂 - 《使用Cocos2d-x 开发3D游戏》系列 第一节:3D时代来临!

    <使用Cocos2d-x 开发3D游戏>系列在线课程 第一节:3D时代来临.Cocos2d-x程序猿的机遇和挑战! 视频地址:http://edu.csdn.net/course/deta ...

  4. 5G商用时代来临!这些产业将发生变革

    5G商用时代来临!这些产业将发生变革 值得注意的是,在获得工信部发放的5G网络试验频率后,三大运营商已在各大城市建设5G基站,开展5G外场测试.华为亦适时表示,已经在中国40多个城市与中国三大运营商开 ...

  5. 4G时代来临,运营商为谁搭台献唱?

        4G时代已然来临.对用户而言,4G意味着更快的传输速度,以及更优质的移动网络体验. 只是对运营商而言.怎样部署4G却成了一大难题.众所周知,在全球范围内,4G LTE成为眼下最率先的移动宽带解 ...

  6. 为什么台湾人工智能可能抢输大陆?(XPU时代来临)

    到了 2020 年,每 3 支手机,就会有一支内建有 AI 芯片. 但目前浮出水面的 AI 芯片新创,几乎都是大陆公司. 为什么台湾这回选择缺席? 「我听说 CPU.GPU,没有听过 NPU? 」11 ...

  7. 5G将会是量变到质变的新科技时代

    ​马斯洛需求分为5层,最底层的需求是温饱,过去几十年都无人反驳,但随着科技的发展,人类最基本最底层的需求已经不再是温饱,而是手机和WIFI,当然,这只是网友的调侃罢了,但也从侧面反映出了手机和WFI网 ...

  8. 连接的世界 - LTE时代产业趋势和战略分析

    连接的世界 - LTE时代产业趋势和战略分析 作者:华为有线技术公司李常伟 2014-09-22 信息产业发展解放的核心是这个世界连接的方式.由语音到数据.由通信到情感.由人的连接到物的连接.由“哑” ...

  9. 5G时代

    电信语音承载在CDMA2G网络--所以2G基本没有网络 网络走fdd4g 如果5G时代来临,4g网络可能就会像3G一样的慢

随机推荐

  1. IntelliJ IDEA无法新建类解决办法

    IntelliJ IDEA无法新建类解决办法 灿夏 2018-07-14 08:50:05  4891  收藏 1 展开 原文地址 IntelliJ IDEA使用教程 (总目录篇) [原文地址](ht ...

  2. CODING 静态网站服务升级,快速、稳定、高拓展!

    CODING 静态网站拥有强大的页面托管服务,目前已有数万开发者.设计师.产品经理.团队与企业使用 CODING 静态网站托管了他(她)们的个人网站.博客.企业与产品官网.在线文档等.CODING 静 ...

  3. [LeetCode]92. Reverse Linked List II反转部分链表

    /* 重点还是反转链表 思路就是中间的反转,然后两头接上 */ public ListNode reverseBetween(ListNode head, int m, int n) { if (he ...

  4. [Deep Learning] 神经网络编程基础 (Basics of Neural Network Programming) - 逻辑回归-梯度下降-计算图

    在神经网络中,假如有m个训练集,我们想把他们加入训练,第一个想到得就是用一个for循环来遍历训练集,从而开始训练.但是在神经网络中,我们换一个计算方法,这就是 前向传播和反向传播. 对于逻辑回归,就是 ...

  5. GraduateDesign-初试APP编写(去除虚拟按键和禁止状态栏下拉)

    为了毕设的要求,需要在Android系统上运行一个app来控制硬件,今天开始这个app的编写. 首先,我们的系统将只运行这个app,也就是我们不需要状态栏,虚拟按键等. 故这里将app设置为全屏模式. ...

  6. Redis主从复制getshell技巧

    Redis未授权漏洞常见的漏洞利用方式: Windows下,绝对路径写webshell .写入启动项. Linux下,绝对路径写webshell .公私钥认证获取root权限 .利用contrab计划 ...

  7. Js HTML DOM动画

    基础页面 为了演示如何通过 JavaScript 来创建 html 动画,我们将使用一张简单的网页: 实例 我的第一部 JavaScript 动画 我的动画在这里. 创建动画容器 所有动画都应该与容器 ...

  8. 一键配置网卡IP(win10)脚本

    前两天有个小伙伴问我,如何快速配置IP,在公司在家里在宿舍,快速配置IP,然后我特别为这个小伙伴写了一个脚本. @echo off mode con: cols=60 lines=25 title 网 ...

  9. Macbook 安装Windows的完美教程

    [原文](http://www.melodydance.top/mac-win.html) 1. 背景 Windows相对于Mac市场占有率更高,对很多人来说Windows使用起来更方便,以至于很多人 ...

  10. 【Redis3.0.x】实战案例

    Redis3.0.x 实战案例 简介 <Redis实战>的学习笔记和总结. 书籍链接 初识 Redis Redis 简介 Redis 是一个速度非常快的键值对存储数据库,它可以存储键和五种 ...