博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
网传不要升级.NET5的诸多原因,你赞同几个?
阅读量:4033 次
发布时间:2019-05-24

本文共 1482 字,大约阅读时间需要 4 分钟。

.NET5正式发布有十多天,博客园、知乎、技术群都讨论的非常热烈。关于项目是否迁移.NET5的话题讨论的尤为热烈,作为.NET十年老司机要告诉你,.NET5的迁移势在必行,当下就是最好的时机!犹豫项目是否升级到.NET5的,大概有以下几种情况,我来一一解析:

1  坚守.NET Framework,不愿升级

19年微软都已经声明,.NET Framework4.8之后就不再更新,不再添加新功能,因为.NET5.0开始了迭代,也许个人技术栈还停留在.NET Framework,但大势决定了升级是必须的,尝试下新平台也会有意外之喜的。

2  .NET5移除了WCF和WWF,没有替代

关于这个问题,Scott Hunter博客有说明,推荐用WebAPI或者gRPC来代替WCF,此外还有个.NET Core WCF客户端可以用来调用WCF服务;再就是用开源的Core Workflow来代替WWF,替代方案是有的,请往前看。

3  .NET5只是GA版,不是LTS

这其实没必要在意,.NET5是经过线上Bing.com、dot.net试运行了多个月才发布的,足够稳定可靠,微软官方推荐可用于生产环境的,有微软的背书,就放心用吧。后续.NET6也是平滑升级的,早升级早省事儿。

4  Winform/WPF并没有跨平台

这个理由是没问题的,目前桌面开发尚未有跨平台UI解决方案,且很多客户端项目都依赖了Windows组件,缺乏替代方案。桌面开发升级.NET5只有性能提升的优势,当下还没有迁移的必须性,等.NET6的跨平台UI方案出来后再升级不迟。

以上是几种情况的分析,如有遗漏欢迎补充交流。下面再给大家总结下本次.NET5发布的亮点,增加你的迁移.NET5动力!.NET Core3.1已经是性能怪兽了,各种性能榜单称雄,而.NET5在此基础上,又额外进步了很多!

1

通过线上(生产环境)测试:.NET5 通过在bing.com和dot.net 托管运行数个月,全面通过了线上验证,证明这个版本是生产可用的。

2

性能大幅提升:GC、JIT、正则表达式、多线程和异步处理、集合、LINQ、网络访问、JSON序列化、gRPC等。

3

C# 9和F# 5 的语言提升:例如C#9的顶级程序和记录record,F#5提供了交互式编程,并提高了.NET的性能。

4

.NET库增强了Json序列化,正则表达式和HTTP(HTTP 1.1,HTTP / 2)的性能。

5

P95 的延迟有所减少,得益于GC、分层编译和其他组件的一些改进。

6

更好、更灵活的应用部署选项:ClickOnce客户端应用程序发布,单文件应用程序,减小的容器映像大小以及添加的Server Core容器映像。

7

平台支持的范围进一步扩展:Windows Arm64和WebAssembly

本人亲自实操

总结了下,犹豫迁移.NET5的人,更多只是因为还没去深入了解,缺乏动手经验,只是看了一些文章人云亦云。这里,本人肝了一周,给大家录制了一波.NET5实操视频,算得上全网首发,希望给.NET开发者一些帮助。

.NET5从零基础入门到实战

新鲜录制-全网首发-链接下载

.NET5正式发布后第3天开始录制,总视频数40+,包含.NET5下Console、MVC、EFCore、WebApi等多类型实操,从下载安装包开始录制,最后落地到实际项目。辛苦录制希望物尽其用,全部视频和源码大家可以在文末获取!

以下是详细内容及获取方式

扫码立即免费领取

领取人数过多,也可加微信:Zhaoxihhhhh

转载地址:http://mokdi.baihongyu.com/

你可能感兴趣的文章
Encoding Schemes
查看>>
移植QT
查看>>
如此调用
查看>>
计算机的发展史
查看>>
带WiringPi库的交叉编译如何处理一
查看>>
带WiringPi库的交叉笔译如何处理二之软链接概念
查看>>
Spring事务的七种传播行为
查看>>
ES写入找不到主节点问题排查
查看>>
Java8 HashMap集合解析
查看>>
ArrayList集合解析
查看>>
欢迎使用CSDN-markdown编辑器
查看>>
Android计算器实现源码分析
查看>>
Android系统构架
查看>>
Android 跨应用程序访问窗口知识点总结
查看>>
各种排序算法的分析及java实现
查看>>
SSH框架总结(框架分析+环境搭建+实例源码下载)
查看>>
js弹窗插件
查看>>
自定义 select 下拉框 多选插件
查看>>
js判断数组内是否有重复值
查看>>
js获取url链接携带的参数值
查看>>