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

GibbonBevis 发布于1年前
0 条问题

在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

感谢冬雨对本文的审校。

查看原文: Build 2018大会:.NET概述和路线图

  • crazymouse
  • lazypeacock
  • whitesnake
  • browntiger
  • silverkoala
需要 登录 后回复方可回复, 如果你还没有账号你可以 注册 一个帐号。