我对于.Net 5.0的一些看法
.Net 5.0 正式发布已经有一段时间了,但是在园子里好像反响不怎么大。
这真的是让人非常痛心,我们这些做.Net的人未来究竟在哪里?还记得三年前刚毕业的时候.Net在互联网中还是能够占有一席之地的,当时也有很多大神试图将.Net发扬光大。
然而随着时间的推移,.Net却好像越来越不行。
网上大家对于Net的评价,没有说不好的。知乎上很多人都说.Net框架,C# 是自己写过的好多种语言里最舒服的。VS也是大家都知道的世界第一编辑器。这就很尴尬,这是“叫好不叫座”。
可能是我过于悲观。互联网是一把放大镜,尤其是现在各种APP的用户画像,智能推荐只会把你想看的东西推到你的面前。
有些人说,.Net是神一样的跨界存在于各行各界,只看互联网的话还是只能看Java。像游戏行业,C#基本是半边天了,上位机下位机工控这些也不少。大多的WPF,WinForm也是都还不错。
希望有些朋友可以理解我,像我这种一直在做Web的人来说,要去“跨界”找工作,很困难的了。况且,我只是个专科生,在市场上可谓毫无竞争力。
我们公司也是近一年成立了Java的团队和产品,当时因为项目工作的一些原因导致我没能去争取。说白了也是自己内心很迷茫,因为转语言也意味着工作时间的延长和工资的下降,这对我来说是有些不能接受的。
在这个公司的这两年,考下了软考的软件设计师,今年也刚刚考上了北邮的成人业余。工作上好像做了很多东西但实际上又没什么。内心也依然迷茫,对人生也对职场。
发了一通牢骚,这篇博文还是要讲 .Net 5.0 的,我打算在接下来的几个月的时间里研究研究Net Core的相关知识,系统的输出一些博文。
之前在.Net2.1/3.1的时候也写过不少的Demo,在公司项目中也有机会使用Net Core做一些小事情,但规模都算不上大。因为项目,时间的一些限制之类的,导致没有什么深入的运用和研究。
写这些博文,一来是多研究研究现在互联网流行的各种中间件,尽量的都实际使用一下。二来也是学学框架中的思维。最近两年做项目都快做傻了,上去就是一把梭。对框架,架构的思考学习少了很多。
今天这篇就简单的讲一下我对于.Net 5.0这个版本大变更的理解,顺便展望一下.Net的未来。
园子里有很多人翻译了.Net Blog的那篇预告.Net 5.0的文章, https://devblogs.microsoft.com/dotnet/introducing-net-5/?WT.mc_id=DT-MVP-5003918,
园友们的讨论就和博文下的讨论一样激烈。
例如
https://www.cnblogs.com/tianqing/p/13982098.html
https://www.cnblogs.com/willick/p/13957034.html
https://www.cnblogs.com/powertoolsteam/p/dotnet5.html
https://www.cnblogs.com/yxcn/p/13999081.html
https://www.cnblogs.com/SavionZhang/p/13962320.html
等文章。
其实园子里的这些翻译的都很好了,我就不班门弄斧了。
主要说一下我对于运行时这些东西的理解。当然我也只是一个所知甚少的年轻人,很多东西不求甚解,大家权当随便听听。
以前我们开发一个WinForm的程序,只需要系统安装.Net Framework框架,我们的程序不需要任何额外的引用既可以实现Windows平台的窗体应用。
而现在Net框架将变成一种统一的系统接口,同样的程序接口在不同的平台有不同的实现,但对于我们上层写应用的人来说是无感知的,这有点像C++跨平台类库针对不同平台编译的感觉,既系统层面的API统一。
然后对于Windows平台的特殊实现,都单独的放在了不同的Nuget包里,感觉是将原有的与Windows系统Api搅在一起的框架拆分了出来。
我觉得这一次的改动更像是一次改名大法,微软经过对于开发趋势,.Net Core的开发过程的判断,“升级”了.Net框架整体的战略,在一些概念上做了提升,试图撇清Windows的包袱。让Windows降级为框架的很小一部分。
也就是说,接下来发展的趋势也像是所有开发者一直期待的那样,一套代码 到处运行。
不过理想很丰满,现实很骨感。平台与平台之间总是有各自的差异,各自的特点。填补各平台差异的工作总要有人去做,而这种工作,怎么做也做不“好”。
在现有的各种开发框架里不乏一些希望做到一套代码,到处运行的框架,比如著名的QT,Flutter等,但很显然,这些框架的问题也不言自明,稍微百度一下就会有很多人劝告你不要这么做。
.Net的愿景自然不用怀疑,Java也在不断的走下坡路。互联网的风潮也正在慢慢的褪去,近几年互联网的浪潮让我这样年轻的开发者误以为一步登天正常不过,实际上很多默默无闻的传统行业才是常态。
而.Net 5.0现在仅仅是一个过渡版本,.Net未来真正面目我们还需要等到2021年的.Net 6.0才可以一睹芳容。
而在这漫长的一年里,世界又会发生什么变化呢,让我们拭目以待。