.NET6来了
在几个月的迭代之后,.NET6官方版本如期与大家见面。
.NET6来了
NET6是LTS的版本,这意味着您可以稳定地使用外部的安全性和补丁更新。NET6将由.NET官网提供,.NET6将于2023年11月进行长期维护。请放心使用。
NET6针对不同的应用场景都有许多亮点,下面进行一些归纳
1.MinimalAPI。
MinimalAPI是构建HTTP服务的替代方式。MinimalAPI将用于.NET6通过web模板创建的项目。在此,我必须指出,MinimalAPI并没有取代大家所熟知的MVC框架。若您的应用程序想要构建API,建议您使用Web模板。但是如果您需要更多有关ASP.NET页面的内容,或者使用MVC模板。
只需四行代码就能实现API功能。根据您的需求,当然可以加入MVC模块,验证模块等等,这取决于您的项目需求。
2.热更新
此前,就有消息称,微软作为一家商业公司,能够满足社区需求,为.NET6保留了社区所需要的一份赞许。对微软和开放源码社区来说也是好消息。
首先要了解一下热更新,最早的热点更新是移动应用程序,尤其是iOS应用程序更新最普遍的一种方法,很多开发者都动态地发出代码,不需要发布新版本,它就能修正BUG和发布功能,使开发者能够绕过苹果的审查机制,避免了长时间的等待审核,以及多次被拒绝所带来的成本。想起了.NET应用程序更新的场景,Xamarin也是这样,慢慢地,每个人都希望如果代码被写成实现热更新,那么就可以减少编译时间,即看到即所得。
NET6通过Windows下的VisualStudio2022,也可以用CLI实现。
用命令行执行相关的HotReload是如此简单,您只需在相应的项目中执行一条命令,就能为Web应用实现HotReload。
3.MAUI。
至于MAUI,我对它的看法是非场深,从早期的monotouch到Xamarin,再到MAUI。有些人可能认为微软放弃了Xamarin,但我认为完全融入.NET6是微软对Xamarin非常看重的一种表现,我还记得7月份Reactor的.NETDay讨论过MAUI架构,您将发现他是.NET6最重要的环节。
4.关于workload。
当.NET应用场景越来越多时,不同用户可能会需要不同的支持,比如我主要关注MAUI,而现在我需要iOS,macOS,Android的支持,但是在SDK中,默认情况下并没有添加相关的SDK。由于如果将所有场景的功能整合到SDK中,这将成为巨大的东西,因此从编译到部署都十分繁琐。NET团队致力于维护SDK的小型化和精益求精,在.NET6中添加了workload以满足不同场景的需要。
在命令行中执行这个动作。
5学习机器学习。
谈到基于.NET的机器学习,我想许多人已经知道了ML.NET。经过多年的发展,这一项目现在为.NET在深度学习领域提供了很好的解决方案。微软此次通过.NET6,带给TorchSharp一个基于dotnet开源的项目TorchSharp,以TensorFlow.NET为参考,通过与PyTorch底层C++API绑定来实现.NET原生PyTorch框架。我相信,以后大家可以用ML.NET中的深度学习场景,就像Keras那样,调用不同的深度学习框架。