2020年艰难而短暂,而互联网的历史车轮还是轰隆隆一路向前,服务网格/云原生/Serverless架构,各种新架构大行其道。重新审视当下主流的编程语言,天下第一的Java已老,下行多年的.NET却浴火重生,焕发生机!十年河东,十年河西,古人诚不我欺。
1
Java危机四伏
25岁的Java算得上历史悠久,当下还占据着“天下第一”的宝座,但是其统治地位并非坚不可摧,反倒可以说是危机四伏,当下云原生的时代,Java 体系建立的前提假设都受到了挑战:
1
Java根基“一次编写,到处运行”(Write Once, Run Anywhere)在当下已毫无优势,“一次构建,到处运行”(Build Once, Run Anywhere)的容器才是互联网需要的,程序+运行环境一起打包才是最流行的程序分发方式;
2
单个微服务不再需要面对几十/几百G的内存管理,有了高可用集群也不要求单服务7x24小时运行,Java优势无从发挥,微服务对编程语言的异构兼容,更是降低其他语言使用成本;
3
容器亲和性的要求,譬如镜像体积、内存消耗、启动速度,以及达到最高性能的时间等,都是Java的弱项!再小的Java程序也要带着完整的虚拟机和标准类库,再小Java的程序都会有固定的基础内存开销和固定的启动时间(Java虚拟机的执行机制)。
2
.NET浴火重生
.NET在互联网方向上已经连续下行多年,直至.NET Core之后方才重新崭露头角,2个月前发布了.NET5之后,吸引了众多互联网巨头的关注,算得上浴火重生,焕发生机!.NET5当前的优势:
1
打破一贯的闭源态度,.NET进入开源跨平台,微软官方推进社区建设,收购GitHub展示决心,Build2020更是表态全力推动社区发展,赋能程序员,国内外基于.NET Core的开源社区异常活跃,涌现了一大批优秀的开源组件;
2
.NET5的性能优势明显,全新设计理念,改写后的CLR,应用层框架不断优化,在.NET Core3.1时代已经性能霸榜,而.NET5性能更进一步;
3
当下微服务和云原生背景下,.NET5的容器感知和自适应优势,最小80M的镜像,最小22M的启动内存,毫秒级快速启动和响应,无疑是首选开发平台。
4
.NET5覆盖的应用分支多,受众体量大,经过.NET Core的几年大刀阔斧改革和.NET5终止两个分支的动作,让整个社区已经习惯了应用最新的开发版本,有利于不断进步和创新。
3
我辈码农,何去何从?
Java和.NET两大主流编程语言都风云变幻,更有C++/PHP/Dephi等老牌语言虎视眈眈,还有Go/Rust等新兴语言异军突起,新时代的程序员,该如何应对技术的迭代更替?无它,唯有学习!学习的时候不要死守.NET Framework拒绝更新迭代,而是应该拥抱新技术.NET5,学习的时候不要自我设限拒绝其他开发语言,而是应该扩大视野博众家之长!
当下是IT互联网技术的大变革之际,编程语言一家独大将不会再现,多语言融合是大势所趋,百花齐放百家争鸣可以预见,.NET5将大放光芒,而Go/Rust等新语言也会精彩夺目!
2个月前.NET5正式发布时我立下Flag,录制一套完整的《.NET5入门到实战》教程,现在终于完成了,60个视频,上万行代码,覆盖ASP.NET Core+Core WebAPI+EntityFrameworkCore,欢迎扫码领取!
扫码免费领取.NET教程合集
写在最后
.NET社区资源欠缺一直为人诟病,现在.NET全平台开源跨平台,恰是我辈.NET一起建设社区的好时机。肝了快2个月录制视频也挺辛苦,还整理了很多.NET全新的高频笔面试题(答案都精校过的),希望能为社区做一些小贡献。众人拾柴火焰高,无论是分享开源框架,写作优质文章,录制技术视频,还是点赞转发.NET文章,都是一份儿贡献。Let's Make .NET Greater Again!
最新整理.NET全新的高频笔面试题附答案
【2021春招ElasticSearch高频面试题】
【2021春招MongoDB高频面试题】
【2021春招Redis高频面试题】
【2021春招MySQL高频面试题】
【2021春招SQLServer高频面试题】
扫描下方二维码即可免费领取↓↓↓
扫码免费领取最新面试题合集
添加微信 zhaoxipenny也可领取