写点什么

Build 2018 大会:.NET 概述和路线图

  • 2018-05-27
  • 本文字数:2057 字

    阅读完需:约 7 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

在 Microsoft Build 2018 大会上,.NET 项目管理主管 Scott Hunter 和.NET 社区主管 Scott Hanselman 举行了一场有关.NET 未来发展的会谈。会谈指出,未来.NET 平台将可以搭建任何类型的应用程序:桌面程序、web 程序、云程序、移动应用、游戏应用、物联网应用或是人工智能应用。你可以将自己熟悉的编程语言应用到新的领域中来。

.NET 的当前状况
每个月都有接近一百万的新用户在 Visual Studio 平台使用.NET Framework 和.NET Core。由于该软件是开源的,除了 Microsoft 之外,有来自 3700 多个企业的 19000 名社区成员做出了贡献。Samsung 将.NET Core 应用在 ARM32 中,并应用于 Raspberry Pi。Illlyriad Games 在性能方面做出了许多贡献。虚拟.NET Conference 将于今年9 月12-14 日举行,Microsoft 和社区成员将讨论有关.NET 的许多内容。

.NET Core 2.1 候选版本发布。RTM 版本有望在5 月底发布。Visual Studio 的内部构建一直做得很好,因此CLI 的构建也将得到改善。ASP.NET Core 和EF Core 之间的差距越来越少,在提升.NET Framework 兼容性的同时也提高了可移植性。ASP.NET Core 将完全支持 GDPR ,对于微服务和 Azure 的支持也将提升。在发布的时候,.NET Core 2.1 工具性能将比现在快 10 倍。实际上,你还可以继续使用.NET Core 2,然后通过使用.NET Core 2.1 工具获得性能的提升。在数据库方面,性能已经得到了大大提升。

为了更好地支持物联网,.NET Core 2.01 现在可以运行在 Raspberry Pi 2、Linux(Ubuntu 18.04 和 Alpine 3.7) 以及 Win 10 IoT,也支持容器。同时,支持 Azure IoT Hub。Samsung 推出了一款拥有.NET 启动屏幕的智能电视。

由于引入了 span<T>,.NET Core 将提升内存的性能。为了提升速度性能,Sockets 进行了重写。ER Core 添加了延迟加载、值转换、查询类型以及数据填充。Razor UI 成为了 ASP.NET Core 中的一款库,并添加了对于 Azure 中 SignalR 的支持。这款服务实现了完全管理,不需要再担心规模、容量分配或持久连接问题。你也可以使用 ASP.NET Core 构建本地实时 SignalR 应用程序。

.NET Core 2 致力于 Web 和云,而.NET Core 3 添加了对桌面应用、物联网和人工智能的支持。甚至 WinForms 和 WPF 也将运行在.NET Core 3 之上。XAML Islands 允许 WinForms 和 WPF 托管 UWP 。XAML Controls 可以实现 WinForms 和 WPF 浏览器以及媒体 UWP 控制。对于 WinForms 进行了 DPI 修复。要做到这个,必须修改 WinForms。但是由于在.NET Core 中有并排支持,这些需要使用WinForms 的应用程序可以和其他对于.NET Core 的使用分开。通常来说,并排支持可以保证.NET Core 和.NET Framework 的单独发展。你也可以单独地开发应用程序。

你可以通过.NET Core 访问到所有Windows 10 APIs,比如Win RT。.NET Core App Builder 可以让你预编译一个小的应用程序,以实现快速启动,去除所有不用的依赖,创建一个独立的可执行文件。

预计在今年能推出.NET Core 3.0 预览版。当然今年晚些时候会发布.NET Core 2.2。

Visual Studio 2017
在 Visual Studio 15.7 版本中改善了对重构的支持。包括 foreach 到 for,for 到 foreach,LINQ 查询到 for 循环,以及 var 和显示类型之间的转换。15.8 版本将给出更多 LINQ 重构的改善。Editorconfig 的改善将在 15.7 和 15.8 版本中都有体现。同时,也会在 Test Explorer 中添加进度图标。

有关 Web 开发方面,15.8 版本中将会大大改善 Razor formatting 和 Razor 文件的重构。Kubernetes 可以通过一款扩展程序得到支持。你也可以通过一款扩展发布到非容器的 Linux 应用程序服务。你还可以通过一款扩展发布到 Azure 容器服务。

Visual Studio for Mac 7.5 将支持 Razor、 TypeScript 和 JavaScript。.NET Core 不仅支持 Azure Functions,还支持基于.NET Standard 2.0 的 Xamarin.Forms。C# 7.2、EditorConfig 和.NET Core 2.1 RC 也将被支持。可以预览 Team Foundation Version Control。两款 IDE 都使用相同的代码库。

.NET 与机器学习
Azure Cognitive Services 是预先构建的机器学习模块,开发人员可以直接使用。可以通过代码中的 REST API 使用视觉、语音和语言的模块。你也可以准备好数据,构建训练自定义的模块。除了几种传统的模块构建方式之外,Microsoft 还引入了 ML.NET,基于例如 Bing 和 Office 等内部应用的技术。它可以与其他的 AI 库,如 Accord.NET 和 CNTK 一起工作。已经有预览版可供参考。

Blazor
Blazor 是一款基于 Razo 和.NET,通过 WebAssembly 运行在浏览器中的实验性 web UI 框架。旨在简化可以运行在任何浏览器中快速搭建单页应用程序的工作。你不需要了解 AngularJS、 React 或 Vue 等技术,但你可以使用开放 web 标准在客户端运行使用.NET 搭建的 web 应用程序。Blazor 使用 Mono 版本.NET 编译到 WebAssembly。它可以利用本地性能运行于所有的浏览器之上。它不需要插件和代码编译转换

查看英文原文 Build 2018: .NET Overview & Roadmap

感谢冬雨对本文的审校。

2018-05-27 14:022127
用户头像

发布了 218 篇内容, 共 67.4 次阅读, 收获喜欢 76 次。

关注

评论

发布
暂无评论
发现更多内容

Nginx安装后要做的第一件事

运维研习社

nginx WEB安全

迄今为止最好用的Flink SQL教程:Flink SQL Cookbook on Zeppelin

Apache Flink

flink

简述Electron的发展和应用

anyRTC开发者

WebRTC 跨平台 Electron RTC sdk

智汇华云 | 深入理解Istio中的证书管理

华云数据

用 Go 写一个轻量级的 ldap 测试工具

冯骐

运维 开发 ldap Go 语言

《精通比特币》学习笔记(第一章)

棉花糖

区块链 读书笔记

面试官:如何用SpringCloud从零设计一个大型电商平台?

Java架构追梦

Java 架构 面试 微服务 SpringCloud

用 Nginx 的 auth_request 模块集成 LDAP 认证

冯骐

Python nginx 运维 ldap 认证

3 月日更挑战|春日胜景,记录暖心每一天

InfoQ写作社区官方

七日更 3月日更 热门活动

【经验分享】如何释放企业CMDB价值?——CMDB建设路径浅谈

嘉为蓝鲸

运维自动化 配置中心 CMDB 配置信息 配置管理

拍乐云加盟UCloud优云精选计划,构建云上的美好互动

拍乐云Pano

ucloud 云服务 RTC 拍乐云 白板

【LeetCode】俄罗斯套娃信封问题Java题解

Albert

算法 LeetCode 28天写作

交换机配置的自动备份与变更告警

冯骐

Python 运维 网络 备份 multissh

在主动要求涨工资这事上,不要学我!从第一份工资800开始说起

四猿外

程序员 涨薪 工资 收入 跳槽

Open-Falcon 中的 LDAP 认证

冯骐

Python 运维 Open-Falcon ldap Go 语言

用 Go 写一个轻量级的 ssh 批量操作工具

冯骐

运维 SSH Go 语言

Golang 中的并发限制与超时控制

冯骐

并发 超时 Go 语言

思科设备漏洞 CVE-2018-0171 的快速修复

冯骐

Python 运维 安全 网络 交换机

Pgbouncer最佳实践:系列四

PostgreSQLChina

数据库 postgresql 软件 开源社区

上过云么?一行代码秒上云体验过么?

华为云开发者联盟

华为云 云服务器 devcloud 代码托管

failure: repodata/repomd.xml from cloudera-manager: [Errno 256] No more mirrors to try

wjchenge

量化交易马特机器人(币掌柜/小树/小喜/瓦力)系统开发策略搭建

薇電13242772558

数字货币 量化策略

如何使用Excel表格精准分析PT100温度阻值关系?

不脱发的程序猿

28天写作 PT100 温度采集算法 Excel数据分析 传感器采集

元素XPATH定位点击为什么老失败?

小小娃爱吃甜食

Python 自动化 测试 selenium

Volcano社区正式发布v1.2.0版本

华为云原生团队

人工智能 开源 AI 云原生

区块链赋能电子合同!构建互联网可信生态整体解决方案

源中瑞-龙先生

LeetCode题解:190. 颠倒二进制位,移动n,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

从小厂逆袭快手,我是如何准备面试的

haxianhe

上云三问 | 京东云这次的大促有哪些“不一样”?

京东科技开发者

云主机 云安全

Spring Boot+Maven实现车牌训练、识别系统

不脱发的程序猿

maven Spring Boot 图像处理 28天写作 车牌训练、识别系统

Serverless 极致弹性解构在线游戏行业痛点

阿里巴巴云原生

Serverless 微服务 开发者 云原生 消息中间件

Build 2018大会:.NET概述和路线图_.NET_Michael Stiefel_InfoQ精选文章