当前位置: 首页 > news >正文

10月TIOBE榜Java跌出前三!要不我转回C#吧

前言

Java又要完了,又要没了,你没看错,10月编程语言榜单出炉,Java跌出前三,并且即将被C#超越,很多资深人士预测只需两个月,Java就会跌出前五。

看到这样的文章,作为一名Java工程师我感到一阵发自灵魂的战栗,三魂丢了两魂,七魄去了六魄,现在已经躺在床上奄奄一息,对未来产生了极大的迷茫,眼泪不争气地流了下来,什么时候Java才能站起来。

哈哈不开玩笑了,先看看排行吧。

逛逛圈子

10月TIOBE编程语言趋势榜单,先瞅瞅。

image

放眼望去,哇!Python!哇!C!哇!C++!唉,Java。咦?C#。

TIOBE 的官方说法:“C# 和 Java 之间的差距从未如此之小。如果这种趋势保持不变,预计 C# 将在两个月后超过 Java。”

看到这句话,我多年逛微博的经验告诉我,有一群人铁定要嗨起来了……

我寻思了一下,先上了CSDN瞅瞅,果然头部热搜就有,点开啥也不说,直接看评论。

image

好吧,直接给我干沉默了。

这我完全没满足好奇心啊,怎么办,遇事不决上知乎。

然后不出意外,也找到一堆文章,点进了热搜靠前的看了看,嗯,没辜负我的期待。

image

有直接反驳的,我猜这肯定是Java工程师。

image

然而实际上我查了下这人的过往评论和文章,竟然是个Golang工程师,咦,我感到一丝诡异,Golang工程师为Java反驳C#,这有多恨啊,我不信,继续翻啊翻,好吧,原来是Java转Golang的,难怪,典型的我可以批评前女友,但你C#不行。

再看了下别的,也有这种串子,直接一串三。话说Rust的加入是不是就快形成嘲讽闭环了,我猜后面估计还会有别的,这大家庭越来越热闹了哈。

image

再翻了下,嗯,我最爱的血喷Java环节果然来了。

image

这还只是这篇文章而已,是冰山一角,其实这样的评论我在其他同类文章也看到不少哈。

我特意抽检了下其中几个人的过往评论,发现没有一个人是Java工程师的,一时让我无语,比如这个就是典型的.net工程师。

image

这种讨论和争议我个人是不排斥的,就觉得挺有意思,编程语言果然还是要百花齐放才有氛围啊。

但是过度的嘲讽我是不赞成的,因为根本改变不了现实,目前国内依然是Java的工作更好找,尤其是对中小企业而言,Java程序员目前依然是首选,这跟Java本身在国内的发展轨迹有关,一时半会儿我是看不到它被替代的可能。

另外,C#我早年也学过,当年还考过什么微软专家认证,虽然后来工作搞的Java,C#体系已经忘光了,但依稀记得那些年C#被Java统治的日子,有一段时间我差点以为C#要走PHP老路了。

但毕竟是微软的东西,有大公司背书就是好,说起来就起来了,最近5年明显能看到C#的起色,我们公司就有一个C#团队,都是北上广回来的七八年经验以上的工程师,专门对接自助机的业务,他们目前对C#就很看好,但也没到尬吹的程度,就是觉得比以前好了许多。

相对的,Java也一样啊,有甲骨文背书,你觉得它拉垮了,但搞不好什么时候一个决策下来,很快又起飞了。

我一向认为,编程语言的发展有一定比例要看公司背景,有实力的公司对于编程语言的改变往往是跳跃式的。

找风向标

有人会问,光凭一张嘴巴说Java目前挺好,有什么依据吗。

我以前的文章其实有写过类似的课题,就是一门编程语言在国内什么情况,要找一个风向标,而不是网上看口水仗。

我以前在广州工作的时候,很早就一直以国内的培训机构和线上教育平台作为风向标,觉得还是挺有用的。

这些机构是做什么的,是做生意的,做生意当然要争取口碑,那么培训出来的学生能找到工作,进入各个IT企业,这才是最大的成绩。

那么这些机构和平台一定是最了解风向的,他们有多年输送出去的学生,这都是资源,很多已经在企业中占有一席之地,他们能得到的企业中的讯息肯定比你和我要直观。

就比如老牌的传智,后起之秀的尚硅谷等等,我每年都会看他们发布的课纲,像传智,往年还会有一个发布会,专门把新一年的课纲列出来。

这里面什么技术被淘汰了,什么技术出现了,通过课纲能明显的看出来。

而且根据他们近两年发布的课程,你能清晰感觉到目前到底哪个专业依然是国内最好找工作的,因为不好找工作他们花那么多力气做课程干嘛呢。

至少到今年2023年,我看到的依然是他们以Java课程为主,前几年会有一些Python课程,因为Python很火,后续又出了一点Golang和区块链的课程,这两年开始有一些嵌入式的冒出来。

但也就这样了,我没看到之后他们开始大力推广这些课程,反而是Java课程依然是主要体系课。

线上平台的话,通过站长之家可以发现,这个领域内流量最高的是慕课网,慕课网中你搜索一下最近两年的课程,80%都是Java的,只是去年多了嵌入式,今年开始多了一些AI相关的,但占比也不多。

他们当然不是傻子,如果学Java的人少了,肯定会有另一种编程语言对应的体系抢占份额,它自然会被这些机构和平台嗅到金钱的味道,陆陆续续一堆课程就会涌现。

事实是,并没有。

以后怎么样我还不知道,目前用事实说话,还是Java。

如果非要以去年和今年的情况而言,我看到的是嵌入式和AI的课程确实有变多,但仅仅两年看不出什么,当年Python还热卖了几年,都说Python要干掉Java了,结果出去找工作才有一堆人把头撞破。

学习的人变多和找工作成功的人多不多是两码事,要看现实数据才行,所以嵌入式和AI这块还有待观察。

谁能替代Java

如果以后是别的语言替代了Java,我个人的一点感觉,Golang肯定是不可能的,因为钻研的领域我看不到替代Java的味道。

Python更不可能,完全不是一个领域,web领域更不提,虽然也不错,但企业级开发和Java不在一个次元。

要真说目前比较火的语言里面,有谁可以替代Java,我还是觉得C#更像一点,因为这俩语言太像了,我刚入行的时候就听到他俩是异姓兄弟的传说。

虽然C#目前我看着是有它自己的领域,但你真要问谁能打败Java,现有的语言里面,不管是看背后公司,还是根据语言特性来讲,还是看流行的程度,甚至包括发展的时间(Java是1995年诞生,C#是2000年诞生),我也只感觉C#和Java是有重叠之处的。

其他的语言压根和Java经营的领域不沾边,也远没有Java配套的成熟体系,只有C#这些条件基本都具备。

至于以后会如何,这没法判定,还要看后面几年是如何演进的。

总结

怎么样,我给大家唠唠,是不是感觉还蛮有意思的。

以上都是个人粗浅观点,不喜轻喷,绝不引战哈,我自己也会偶尔学习下Python、Go的语法,更多是为了了解一下行业内当下流行的语言是什么样,大家也可以像我一样,有空多了解了解,还是有用的,也能增加自己对编程领域的兴趣。

没兴趣,哪有学习的动力呢。

好了,今天的话题你还满意吗。


喜欢的话请点赞+关注↓↓↓哦,持续分享干货和行业有趣的话题。

相关文章:

10月TIOBE榜Java跌出前三!要不我转回C#吧

前言 Java又要完了,又要没了,你没看错,10月编程语言榜单出炉,Java跌出前三,并且即将被C#超越,很多资深人士预测只需两个月,Java就会跌出前五。 看到这样的文章,作为一名Java工程师我…...

优盘中毒了怎么办?资料如何恢复

在现代社会中,优盘成为我们日常生活与工作中必备的便携式存储设备。然而,正是由于其便携性,优盘也成为病毒感染的主要目标之一。本篇文章将帮助读者了解如何应对优盘中毒的情况,以及如何恢复因病毒感染丢失的资料。 ▶优盘为什么…...

如何查看端口占用(windows,linux,mac)

如何查看端口占用,各平台 一、背景 如何查看端口占用?网上很多,但大多直接丢出命令,没有任何解释关于如何查看命令的输出 所谓 “查端口占用”,即查看某个端口是否被某个程序占用,如果有,被哪…...

Photoshop与Web技术完美融合,Web版Photoshop已正式登场

通过WebAssembly Emscripten、Web Components Lit、Service Workers Workbox以及对新的Web API的支持,Chrome和Adobe之间的合作使得将Photoshop桌面应用程序引入Web成为了一项重大的里程碑。现在,您可以在浏览器上使用高度复杂和图形密集的软件&#…...

易点易动:提升企业固定资产管理效率的完美解决方案

在现代商业环境中,企业的固定资产管理是一项关键任务。高效的固定资产管理可以帮助企业降低成本、提高生产力,并确保资产的最佳利用。然而,传统的资产管理方法常常繁琐、低效,导致信息不准确、流程混乱。为了解决这一问题&#xf…...

SRE实战:如何低成本推进风险治理?稳定性与架构优化的3个策略

一分钟精华速览 SRE 团队每天面临着不可控的各类风险和重复发生的琐事,故障时疲于奔命忙于救火。作为技术管理者,你一直担心这些琐事会像滚雪球一样,越来越多地、无止尽地消耗你的团队,进而思考如何系统性地枚举、掌控这些风险&a…...

APK大小缩小65%,内存减少70%:如何优化Android App

APK大小缩小65%,内存减少70%:如何优化Android App 我们一直在努力为我们的Android应用程序构建MVP产品。在开发MVP产品后,我们发现需要进行应用程序优化以提高性能。经过分析,我们发现了以下可以改进的应用…...

传统工厂如何搭建蒸汽流量远程无线抄表系统?

一、应用背景 2021年国务院政府工作报告中指出,扎实做好碳达峰、碳中和各项工作,制定2030年前碳排放达峰行动方案,优化产业结构和能源结构,特别是近期煤炭价格上涨导致蒸汽价格大幅上涨,节能减排显得更加重要&#xf…...

睿趣科技:抖音店铺怎么取名受欢迎

抖音作为国内最大的短视频平台,其商业价值不容忽视。许多商家和创作者都在抖音上开设了自己的店铺,而一个富有创意和吸引力的店铺名字,往往能带来更多的客流量。那么,如何为抖音店铺取个好名字呢?以下是一些有用的建议。 明确定位…...

面试经典 150 题 22 —(数组 / 字符串)— 28. 找出字符串中第一个匹配项的下标

28. 找出字符串中第一个匹配项的下标 方法一 class Solution { public:int strStr(string haystack, string needle) {if(haystack.find(needle) string::npos){return -1;}return haystack.find(needle);} };方法二 class Solution { public:int strStr(string haystack, s…...

儿童产品亚马逊CPC认证审核不通过的原因解析

一、亚马逊CPC认证审核不通过的原因 CPC认证是亚马逊针对卖家销售儿童用品的一个认证,如果提交CPC证书到亚马逊,亚马逊审核一直不通过,我们可以从几个方面入手来查下什么原因,是资料本身的原因?是否提供的资料合规&…...

项目_数据可视化| 折线图.散点图.随机漫步

安装matplotlib 在正式开始编写程序之前,需要先安装pip、matplotlib模块,苹果系统的安装问题在之前的文章中有相关介绍内容,如果pycharm运行模块报错,可以再次检查是否版本兼容问题。 绘制折线图 调用subplot(&#x…...

Android 项目增加 res配置

main.res.srcDirs "src/main/res_test" build->android->sourceSets...

MySQL数据库的MVCC详解

在MySQL的事务隔离锁机制中,MVCC是一个非常重要的概念,学会MVCC可以更好地理解MySQL如何实现各种隔离级别。 首先,大概地介绍一下mysql的事务隔离级别: 1、读未提交(Read Uncommited):指的是&…...

AI:10-基于TensorFlow的玉米病害识别

玉米是世界上最重要的粮食作物之一,然而,玉米病害对其产量和质量造成了严重威胁。传统的病害识别方法通常依赖于人工观察和经验判断,效率低下且易受主观因素影响。近年来,基于深度学习的图像识别技术在农业领域取得了显著进展,为玉米病害的快速、准确识别提供了新的解决方…...

vue3前端开发系列 - electron开发桌面程序(2023-10月最新版)

文章目录 1. 说明2. 创建项目3. 创建文件夹electron3.1 编写脚本electron.js3.2 编写脚本proload.js 4. 修改package.json4.1 删除type4.2 修改scripts4.3 完整的配置如下 5. 修改App.vue6. 修改vite.config.ts7. 启动8. 打包安装9. 项目公开地址 1. 说明 本次安装使用的环境版…...

前端uniapp生成海报并保存相册

uiapp插件 目录 图片qrcode.vue源码完整版封装源码qrcodeSwiper.vue最后 图片 qrcode.vue源码完整版 <template><view class"qrcode"><div class"qrcode_swiper SourceHanSansSC-Normal"><!-- <cc-scroolCard :dataInfo"dat…...

0基础学习VR全景平台篇 第104篇:720全景后期软件安装

上课&#xff01;全体起立~ 大家好&#xff0c;欢迎观看蛙色官方系列全景摄影课程&#xff01; 摄影进入数码时代&#xff0c;后期软件继承“暗房工艺”&#xff0c;成为摄影师表达内在情感的必备工具。 首先说明&#xff0c;全景摄影与平面摄影的一个显著的区别是全景图片需…...

CMakeLists编译前拷贝文件或目录

${CMAKE_CURRENT_BINARY_DIR} 编译工程目录 file(COPY python/ DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/python/ FILES_MATCHING PATTERN "*.exe") file(COPY python/Lib DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/python/) file(COPY python/Libs DESTINATION $…...

mysql面试题35:MySQL有关权限的表有哪些?

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:MySQL有关权限的表有哪些? MySQL中与权限相关的表主要包括以下几个: user表:存储MySQL用户的基本信息,包括用户名、密码等。可以使用以下命令…...

vscode里如何用git

打开vs终端执行如下&#xff1a; 1 初始化 Git 仓库&#xff08;如果尚未初始化&#xff09; git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...

Linux链表操作全解析

Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表&#xff1f;1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...

系统设计 --- MongoDB亿级数据查询优化策略

系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log&#xff0c;共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题&#xff0c;不能使用ELK只能使用…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面

代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口&#xff08;适配服务端返回 Token&#xff09; export const login async (code, avatar) > {const res await http…...

docker 部署发现spring.profiles.active 问题

报错&#xff1a; org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...

CSS设置元素的宽度根据其内容自动调整

width: fit-content 是 CSS 中的一个属性值&#xff0c;用于设置元素的宽度根据其内容自动调整&#xff0c;确保宽度刚好容纳内容而不会超出。 效果对比 默认情况&#xff08;width: auto&#xff09;&#xff1a; 块级元素&#xff08;如 <div>&#xff09;会占满父容器…...

C++.OpenGL (20/64)混合(Blending)

混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...

【 java 虚拟机知识 第一篇 】

目录 1.内存模型 1.1.JVM内存模型的介绍 1.2.堆和栈的区别 1.3.栈的存储细节 1.4.堆的部分 1.5.程序计数器的作用 1.6.方法区的内容 1.7.字符串池 1.8.引用类型 1.9.内存泄漏与内存溢出 1.10.会出现内存溢出的结构 1.内存模型 1.1.JVM内存模型的介绍 内存模型主要分…...

MFE(微前端) Module Federation:Webpack.config.js文件中每个属性的含义解释

以Module Federation 插件详为例&#xff0c;Webpack.config.js它可能的配置和含义如下&#xff1a; 前言 Module Federation 的Webpack.config.js核心配置包括&#xff1a; name filename&#xff08;定义应用标识&#xff09; remotes&#xff08;引用远程模块&#xff0…...

绕过 Xcode?使用 Appuploader和主流工具实现 iOS 上架自动化

iOS 应用的发布流程一直是开发链路中最“苹果味”的环节&#xff1a;强依赖 Xcode、必须使用 macOS、各种证书和描述文件配置……对很多跨平台开发者来说&#xff0c;这一套流程并不友好。 特别是当你的项目主要在 Windows 或 Linux 下开发&#xff08;例如 Flutter、React Na…...