本月初微软官宣.NET 6 的RC1即将在11月正式发布,这意味着.NET6正式版跟我们见面的时间又近了一步。在之前的.NET6预览版本中,微软加入了大量新功能特性,而在最终版本中将不再额外加入新的内容,只对现在的内容进行进一步性能优化,以求系统更加稳定。

微软官方提供了.NET主题相关总览

从年初发布的预览1,到8月发布的预览7,许多新功能陆续进入大家的视线。

其中最受期待的,莫过于2020年5月微软推出的 .NET跨平台 UI 框架——MAUI(.NET Multi-platform App UI)。MAUI源自Xamarin.Forms,能让开发者用一套代码覆盖Android、iOS、Windows 和 macOS。

此外,在7月发布的.NET 6 Preview 6中,微软正式宣布.NET6支持更多的设备, 包括 Apple M1。这对于广大Macbook用户来说,无疑是一个振奋人心的消息。

回首.NET6预览版在这一年间的更新,许多内容都可圈可点:

  • C# 10 的改进

在 C# 10 中,许多API已经使用了C#的新特性,如顶层语句等。

上图展示了 C# 10 的这一特性,开发者从使用类和方法的编程方式,切换为支持Attribute的Lambda表达式,这样就能让更多的代码拥有类似MVC 控制器的功能。

  • 具有原生设备功能的Blazor 桌面Web应用

如今,Blazor 已成为编写 .NET Web 应用程序的非常流行的方式。微软最初在服务器上支持 Blazor,然后在具有 WebAssembly 的浏览器中提供支持。.NET 6再次对其进行扩展,支持用Blazor编写桌面应用程序,即Blazor桌面。Blazor桌面可用于创建混合型客户端应用,即在原生客户端应用中嵌入Web页面,通过接口把 Web 和原生 UI 结合在一起。Blazor 建立在MAUI之上,具有与其他解决方案相当的启动和吞吐性能。大量在离线桌面应用中提供丰富 UI 的 Web 开发者将会因此而受益。

上图演示了在 macOS 上运行的 Blazor 桌面应用程序。在此示例中,整个应用程序都是使用 Blazor 构建的,除了外部由 Mac 应用程序容器提供的外框。

  • 云原生应用的最小化 Web APIs

在 .NET 6 中,微软为 Web 应用的托管和路由引入了一个全新的API:WebApplication。

该 API的主要目的是帮助使用C#(或者F#)的后端开发者,快速创建微服务项目或者HTTP API服务。

与之前的ASP.NET Core Web API相比,新的Web API在启动模板和框架结构上都进行了优化。API的模板相当简洁,我们甚至只需要写4行代码便可完成一个最小Web API项目的搭建。

  • 支持HTTP/3

HTTP/3是为了解决HTTP/2.0的传输相关问题而生的,可以让用户在各种设备上更快地访问Web页面和服务。它基于一个新的传输层协议,称为QUIC(Quick UDP Internet Protocol),工作在UDP之上,而不是TCP。

在.net 6预览版中,微软添加了对 HTTP/3 的支持,这是一项很大的改进。HTTP3 加快了连接的设置速度,极大提升了低质量网络下的性能。

从.NET的开源与基金会的成立,到.NET的开源,微软的每一个举动无一不影响着全世界的开发者。.NET的每一个更新,都会引起社区中开发者的关注和讨论。而我们也一直关注着.NET,并十分期待.NET6正式上线后可以为我们带来更多惊喜。

最后,在微软宣布.NET6进入发布倒计时的时候,我们也请到了微软的"最有价值专家"(MVP)——中国.NET队长张善友,为我们带来对于.NET6的见解和内容前瞻。

大家有兴趣不要错过~详细内容可见葡萄城公开课。

性能再提升70%?大咖前瞻带你揭开.NET6的神秘面纱!的更多相关文章

  1. 带你揭开ATM的神秘面纱

    相信大家都用过ATM取过money吧,但是有多少人真正是了解ATM的呢?相信除了ATM从业者外了解的人寥寥无几吧,鄙人作为一个从事ATM软件开发的伪专业人士就站在我的角度为大家揭开ATM的神秘面纱吧. ...

  2. SparkSQL大数据实战:揭开Join的神秘面纱

    本文来自 网易云社区 . Join操作是数据库和大数据计算中的高级特性,大多数场景都需要进行复杂的Join操作,本文从原理层面介绍了SparkSQL支持的常见Join算法及其适用场景. Join背景介 ...

  3. 一文带你深扒ClassLoader内核,揭开它的神秘面纱!

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」. 如果觉得 「不错」 的朋友,欢迎 「关注 + 留言 + 分享」,文末有完整的获取链接,您的支持是我前进的最大的动力! 前言 Clas ...

  4. 走一步再走一步,揭开co的神秘面纱

    前言 原文地址 源码地址 了解co的前提是已经知晓generator是什么,可以看软大神的Generator 函数的语法,co是TJ大神写的能够使generator自动执行的函数库,而我们熟知的koa ...

  5. “大屏,您好!” SONIQ声光揭新品“U•F•O”神秘面纱

    作为全球第一批做互联网智能电视的传媒企业,SONIQ声光于4月22日在中国大饭店举行了盛大的新品发布会.其中的重头戏就是当天发布会上作为先锋部队入驻中国电视市场的"UFO".笔者作 ...

  6. 解决Notice错误,性能竟然提升了1000多倍!

    先说PHP的deprecated错误的性能问题 最近刚刚完成了一个项目,在测试完基本功能后,我们就发布到线上.结果上线不久就发现产生了大量的错误,如下图: 一看都是PHP的Deprecated错误,是 ...

  7. CPU性能过剩提升乏力影响未来行业发展吗?

    导读 虽然CPU仍然在不断发展,但是它的性能已经不再仅仅受限于单个处理器类型或制造工艺上了.和过去相比,CPU性能提升的步伐明显放缓了,接下来怎么办,成为横亘在整个行业面前的大问题. 虽然CPU仍然在 ...

  8. 大咖云集!IMWebConf 2017 前端大会即将在深圳盛大开幕

    2017年火热的夏季,一年一度的IMWebConf强势来袭!9月16日,深圳科兴国际会议中心,我们将全心全意打造一场前端盛宴,恭候各位的光临. 作为一名前端老鸟,笔者有幸也参与了本次的大会的主题分享& ...

  9. ELK 性能(2) — 如何在大业务量下保持 Elasticsearch 集群的稳定

    ELK 性能(2) - 如何在大业务量下保持 Elasticsearch 集群的稳定 介绍 如何在大业务量下保持 Elasticsearch 集群的稳定? 内容 当我们使用 Elasticsearch ...

随机推荐

  1. SpringMVC学习06(JSON)

    6.Json 6.1 什么是JSON? JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式,目前使用特别广泛. 采用完全独立于编程语言的文本 ...

  2. shell趣味实验——图形

    目录 一.直线 二.矩形 2.1.镂空矩形 三.直角三角形 3.1.倒直角三角形 3.2.反直角三角形 3.3.等腰三角形 3.4.倒等腰三角形 3.5.菱形 四.平行四边形 五.梯形 5.1.等腰梯 ...

  3. MySQL-02-体系结构

    MySQL体系结构 c/s模型介绍 连接MySQL # TCP/IP方式(远程.本地) mysql -uroot -pAlnk123 -h 10.0.0.51 -P3306 # Socket方式(仅本 ...

  4. BaiduSpider:爬取百度的利器

    视频链接:https://www.zhihu.com/zvideo/1272864710321516544 BaiduSpider是一个能够爬取百度搜索结果的Python爬虫,轻量但强大.目前支持百度 ...

  5. 泛微OA e-cology 数据库接口信息泄露学习

    泛微OA e-cology 数据库接口信息泄露 漏洞信息 攻击者可通过存在漏洞的页面直接获取到数据库配置信息.如果攻击者可直接访问数据库,则可直接获取用户数据,甚至可以直接控制数据库服务器:会将当前连 ...

  6. stm32 connot enter debug mode

    dap 可以发现设备,stlink jlink 均无法发现设备,但是都不能下载.connot enter debug mode ,发现是vdda 未连接

  7. Java之Spring基础与IoC

    Spring About Spring 开源免费框架,轻量级,非入侵式框架.Spring就是一个轻量级的控制反转(IOC)和面向切片编程(AOP)的框架 Maven repo:Spring Web M ...

  8. nginx 部署vue

    server { listen 80; server_name localhost; root /www/meiduo_admin/dist; access_log /var/log/nginx/ad ...

  9. 【java web】过滤器filter

    一.过滤器简介 过滤器filter依赖于servlet容器 所谓过滤器顾名思义是用来过滤的,Java的过滤器能够为我们提供系统级别的过滤,也就是说,能过滤所有的web请求, 这一点,是拦截器无法做到的 ...

  10. C++ 中的信号的处理

    C++ 信号处理 信号是由操作系统传给进程的中断,会提早终止一个程序.在 UNIX.LINUX.Mac OS X 或 Windows 系统上,可以通过按 Ctrl+C 产生中断. 有些信号不能被程序捕 ...