公司高层要我转Java 我直接邮件回怼...

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也可领取

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/305691.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux如何实现网络高级编程,嵌入式Linux网络编程之:网络高级编程-嵌入式系统-与非网...

10.3 网络高级编程在实际情况中,人们往往遇到多个客户端连接服务器端的情况。由于之前介绍的如connet()、recv()和send()等都是阻塞性函数,如果资源没有准备好,则调用该函数的进程将进入睡眠状态,这样就无法处理I/O多路复用的情况…

.NET斗鱼直播弹幕客户端(2021)

.NET斗鱼直播弹幕客户端(2021)离之前更新的两篇《.NET斗鱼直播弹幕客户端》已经有一段时间,近期有许多客户向我反馈刚好有这方面的需求,但之前的代码不能用了——但网上许多流传的Node.js、Python脚本却可以用,这岂能忍?&#xff…

McAfee推免费版SiteAdvisor安全上网工具

McAfee近期宣布推出完全免费版McAfee SiteAdvisor上网工具。McAfee SiteAdvisor是业界第一款Web安全工具,能够主动地提醒用户在浏览、搜索和即时通信或收发电子邮件时所遇到的危险站点,避免遭到网络钓鱼、间谍软件等恶意程序的***。 McAfee SiteAdvisor是…

9050 端口 linux 进程,windows和linux查看端口占用情况

一、Windows平台在windows命令行窗口下执行:1.查看所有的端口占用情况C:\>netstat -ano协议 本地地址 外部地址 状态 PIDTCP 127.0.0.1:1434 0.0.0.0:0 LISTENING 3236TC…

Exceptionless服务端本地化部署

背景分布式异常日志收集框架Exceptionless是开源的工具,根据官方给出的说明:Exceptionless提供两种使用方式,一种是官网创建账号,需要付费,免费版有限制;一种是自己搭建本地项目,无任何限制。准备安装包准备…

微软所谓的无人工介入的自动的机器翻译系统

近日在微软网站上查找资料,发现一个资料里有如下的声明性描述:注意:这篇文章是由无人工介入的自动的机器翻译系统翻译完成。这些文章是微软为不懂英语的用户提供的, 以使他们能够理解这些文章的内容。微软不保证机器翻译的正确度,也不对由于内容的误译或…

ABP vnext模块化架构的最佳实践的实现

在上一篇文章《手把手教你用Abp vnext构建API接口服务》中,我们用ABP vnext实现了WebAPI接口服务,但是并非ABP模块化架构的最佳实践。我本身也在学习ABP,我认为ABP新手应该从最佳实践开始学习,可以少走很多弯路,所以写…

WebCast学习链接

全部下载列表1. C#面向对象设计模式纵横谈系列课程 讲师:李建忠 上海祝成信息科技有限公司 高级培训讲师 MSDN特邀讲师2. ASP.NET AJAX深入浅出系列课程 讲师: 老赵 课程(1):ASP.NET AJAX 概述 课程(2):UpdatePanel的使用(…

linux删除第二次出现的字符,linux下 怎样删除文件名中包含特殊字符的文件

目录中无意间出现了 -- 这个文件[rootdev tmp]# ls-- 00 01 02 03 04 05 06 07 08 09[rootdev tmp]# lltotal 0-rw-r--r-- 1 root root 0 Oct 23 15:31 ---rw-r--r-- 1 root root 0 Oct 23 15:37 00-rw-r--r-- 1 root root 0 Oct 23 15:37 01-rw-r--r-- 1 root root 0 Oct 23 1…

全球知名跨境电商,.Net软件工程师招聘,约么?

公司:际客国际电子商务有限公司,网址:http://geekbuy.cn/工作地点:深圳市龙岗区五和大道南雅宝路1号星河WORLD B座岗位职责:中级开发工程师。薪资待遇:10K-20K,具体面议。 职位要求&#x…

被关起来日子的流水帐

2007年3月19日 老上号经过3个半小时的颠簸,在晚上7:30到达了哈尔滨,还是住在黑龙江大学旁边的学府宾馆,由于是在学校的边上,相对来说比较安全,宾馆的条件已经不如以前了,稍微显得有点陈旧&#…

krc 编辑 linux,Linux网络编程

6 berkeley - 145 -struct in_addr {unsigned long s_addr;};ina struct sockaddr_instruct in_addrina.sin_addr.s_addr 4 IP4 IP #defines6.5.21IP2h to nto Network Short Hosts H-to-n-s htons()68000n h to s l IPstolh() Short to Long Host?l htons() “Host to Networ…

iphone查看删除的短信_手机资讯:iPhone手机可以批量删除短信吗如何操作

如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多知识的,这些知识很多小伙伴一般都是不知道的,就好比最近就有很多小伙伴们想要知道iPhone手机可以批量删除短信吗如何操作,那么既然现在大家对于iPhone手机可…

如何在 C# 8 中使用 模式匹配

模式匹配 是在 C# 7 中引入的一个非常????的特性,你可以在任何类型上使用 模式匹配,甚至是自定义类型,而且在 C# 8 中得到了增强,引入了大量的新模式类型,这篇文章就来讨论如何在 C# 8 中使用模式匹配。C# 8 中的表…

linux下找不到libc 库,Linux-覆盖libc open()库函数

我在库&中有glibc提供的相同的覆盖open().我首先在库中设置了LD_PRELOAD,因此当进程调用open()时,将调用库中定义的open.问题:-glibc中还有其他几个函数,一旦示例为getpt(),就会调用open(),当getpt()调用open()时,将调用glibc中定义的open(),我将如何使getpt ()…

Hadoop 中zoo_0基础如何入门HADOOP

原标题:0基础如何入门HADOOP学习一样东西,肯定先要了解这个东西是什么,那什么是HADOOP呢?我们就来看看什么是HADOOP和如何学习HADOOP及学习内容。一,什么是HADOOPHADOOP是apache旗下的一套开源软件平台HADOOP提供的功能…

.NET 5 程序高级调试-WinDbg

上周和大家分享了.NET 5开源工作流框架elsa,程序跑起来后,想看一下后台线程的执行情况。抓了个进程Dump后,使用WinDbg调试,加载SOS调试器扩展,结果无法正常使用了:0:000> .loadby sos clrUnable to find…

精妙Sql语句

1. 判断a表中有而b表中没有的记录 select a.* from tbl1 a left join tbl2 b on a.key b.key where b.key is null 虽然使用in也可以实现,但是这种方法的效率更高一些 2. 新建一个与某个表相同结构的表 select * into b from a where 1&l…

.Net在线编辑工具.NET Fiddle

介绍推荐工具:.NET Fiddle推荐理由:在线调试,编译,运行.net代码,同时支持C#,VB.NET,F#推荐说明::对于.NET开发者来说是福音,因为我们可以不用再担心环境与庞大…

Typora markdown公式换行等号对齐_下了31个markdown编辑器,我就不信选不出一个好用的...

markdown编辑器测评标准总体标准渲染领域编辑领域数据管理其他TyporaVnoteMwebJoplinZettlrmacdownulyssesMarktextghostwriterfocusedbywordmarkedFarBoxNotablebear(熊掌笔记)iA writerMarxico(马克飞象)JetBrains系列的IDEsublime(贫穷,没有插件&…