经过一年多的开发,Microsoft 于北京时间 11 月 11 日(星期三)发布了其 .NET 5软件开发平台,强调平台的统一,并引入了 C# 9 和 F# 5 编程语言,新平台朝着桌面、Web、移动、云和 IoT 目标统一 .NET 开发体验的方向发展。.NET 5被描述为 Microsoft .NET 统一之旅中的第一个版本,它是为了使更多的开发人员群体能够将 .NET 框架代码和应用迁移到 .NET 5。该平台将来自 .NET Framework、.NET Core 和 Mono 的元素组合在一起,为所有现代 .NET 代码创建单个平台。工作已经完成,不过 Xamarin 开发人员还需要在一年内发布 .NET 6.0 时使用 .NET 平台。

.NET 5 可从dotnet.microsoft.com或新发布的 Visual Studio 2019 更新 16.8 得到。.NET 5 中的其他关键功能包括:

  • Windows ARM64 支持。
  • Windows 桌面开发增强功能。
  • 改进了 JSON 序列化器 API。
  • 空的引用类型注释。
  • Web 和云原生。
  • 单个文件应用程序和较小的容器映像。
  • 性能提高,gRPC 性能据说超过 Go、C++ Java。
  • 全堆栈 .NET 应用与Blazor Web UI 框架,支持 Blazor 服务器和 Blazor WebAssembly,它支持 .NET Core框架库,并在 .NET 5 中跑的更快。
  • 新的模型是支持WinRT API的特色,包括调用 API、在两个类型系统之间封送数据以及要跨类型系统或 ABI 边界处理相同的类型的统一。现有的 WinRT 互操作系统已从 .NET 运行时中删除。

同时,C# 9侧重于程序简单性、面向数据的类和更多模式。F# 5是微软函数编程语言的升级,添加了插值字符串和打开类型声明。此外, NET 5 中的ASP.NET Core Web 开发平台还改进了 MVC 模型绑定、Azure AD 身份验证和 SignlR 集线器筛选器和并行集线器调用。

Microsoft 对 .NET 的愿景推荐采用 .NET 5 到 .NET 6" Wave",该"Wave"包括单个 SDK、跨平台本机 UI 和云原生投资。计划要求每年 11 月发布主要 .NET 版本,所有其他版本都是长期支持版本。下一个 LTS 版本是 NET 6.0。将根据需要提供次要版本。

.NET Conf 是由 .NET 社区和 Microsoft 共同组织的为期三天(2020 年 11 月 10 日- 12 日)的免费虚拟开发人员活动。今年.NET 5.0 将在 .NET Conf 2020 上推出!来庆祝一下,了解新版本.NET 。
.NET Conf 从一开始就是一个虚拟活动,今年还是10周年活动,在三天中,我们提供广泛的现场会议选择,以社区和 .NET 团队成员的演讲者为特色。在会议的第二天和第三天之间每天24小时进行直播,因此每个人都可以参与其中,无论他们的时区如何。详细内容参见 https://www.dotnetconf.net/agenda

.NET 5 和 C#9 /F#5 一起到来, 向实现 .NET 统一迈出了一大步的更多相关文章

  1. 一步一步学Python(1) 基本逻辑控制举例和编码风格规范

    (1) 基本逻辑控制举例和编码风格规范 1.while死循环 2.for循环 3.if,elif,else分支判断 4.编码风格(官方建议) 版本:Python3.4 1.while死循环 #func ...

  2. FineUI v4.0.2 (beta) 发布了!

    FineUI v4.0.2 (beta) 已经于 2013-12-15 发布! ================================== 关于FineUI基于 ExtJS 的开源 ASP. ...

  3. Mysql_以案例为基准之查询

    查询数据操作

  4. 【Java基础 】Java7 NIO Files,Path 操作文件

    从Java1.0到1.3,我们在开发需要I/O支持的应用时,要面临以下问题: 没有数据缓冲区或通道的概念,开发人员要编程处理很多底层细节 I/O操作会被阻塞,扩展能力有限 所支持的字符集编码有限,需要 ...

  5. 回味Python2.7——笔记1

    一.基本知识 1.一个值可以同时赋给几个变量: >>> x = y = z = 0 # Zero x, y and z >>> x 0 >>> y ...

  6. Docker应用:Kubernetes(容器集群)

    阅读目录: Docker应用:Hello World Docker应用:Docker-compose(容器编排) Docker应用:Kubernetes(容器集群) 前言: 终于出第三篇了,上个月就已 ...

  7. codestyle 设置问题

    参考: https://blog.csdn.net/hugh77/article/details/43268195 使用 4 空格缩进,而非 TAB. 在小缩进(可以嵌套更深)和大缩进(更易读)之间, ...

  8. 简单易懂的博弈论讲解(巴什博弈、尼姆博弈、威佐夫博弈、斐波那契博弈、SG定理)

    博弈论入门: 巴什博弈: 两个顶尖聪明的人在玩游戏,有一堆$n$个石子,每次每个人能取$[1,m]$个石子,不能拿的人输,请问先手与后手谁必败? 我们分类讨论一下这个问题: 当$n\le m$时,这时 ...

  9. java 格式化

    一. 可以之际像c语言一样用System.out.printf()格式化输出 二. System.out.format 1. format()方法模仿自printf(), 可用于PrintStream ...

随机推荐

  1. MySql查询语句中的变量使用

    前言 今日在LeetCode刷MySql的题,遇到一题,题目到没什么,解答完了之后习惯去看此题的题解,有位大佬的思路让博主感觉很惊艳,至此,特地记录学习一下. 题目 解答 乍一看题目也没啥,分数排名, ...

  2. [学习笔记] 数位DP的dfs写法

    跟着洛谷日报走,算法习题全都有! 嗯,没错,这次我也是看了洛谷日报的第84期才学会这种算法的,也感谢Mathison大佬,素不相识,却写了一长篇文章来帮助我学习这个算法. 算法思路: 感觉dfs版的数 ...

  3. c 判断端口是否已被使用

    isPortOpen.c #include <stdio.h> #include <stdlib.h> #include <string.h> #include & ...

  4. centos7 yum 安装nodejs、npm、cnpm、pm2、yarn

    一.环境准备 1.1 查看系统环境 [root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) [ ...

  5. git的项目完整操作

    今天来说下项目中git 的使用,针对常规操作: 然后执行  git status  可以看到目前的状态: 再执行添加操作      git add . 添加所有文件 接着执行提交命令  git com ...

  6. 【idea&spring mvc】搭建简易的spring mvc项目(基于maven)!

    一.创建项目 1.打开idea,file--new--project 2.按照步骤①②③④操作 3.输入包名,并点击下一步 4.选择下载包的maven的setting.xml配置路径和包的存放地,然后 ...

  7. 数据库SQL Server 2016“功能选择”详细说明及精简安装选择

    前言 在平时大家安装数据库的时候,一般默认功能选择都会选择全选.但是前两天公司同事问我:"那么多功能为什么都能用到嘛?"顿时,我思考了一下确实没有详细了解每个功能的详细作用,于是花 ...

  8. Hadoop框架:DataNode工作机制详解

    本文源码:GitHub·点这里 || GitEE·点这里 一.工作机制 1.基础描述 DataNode上数据块以文件形式存储在磁盘上,包括两个文件,一个是数据本身,一个是数据块元数据包括长度.校验.时 ...

  9. qemu-kvm安装and配置桥接和SR-IOV

    kvm和docker的区别:kvm是全虚拟化,需要模拟各种硬件,docker是容器,共享宿主机的CPU,内存,swap等.本文安装的qemu-kvm属于kvm虚拟化,其中:kvm负责cpu虚拟化和内存 ...

  10. 想买保时捷的运维李先生学Java性能之 运行时数据区域

    前言 不知道自己不知道,不知道自己知道,知道自己不知道,知道自己知道,目前处于知道自己不知道这个阶段,很痛苦啊,干了4年了运维,是一个坎.越来越发觉想要走得远,还是得扎根底.   一.运行时数据区域 ...