Java只有国人在搞了?

从Java诞生到现在,在全球一直属于最大的开发平台,拥有着世界上最多的开发者和最活跃的社区。你说Java只有国人在搞就有点过分了,Java中常用的主流框架全是外国人写的,虽说阿里也为Java做了很多贡献,但你还真没有资格说Java是国人的主场。

在国内,无论你上哪个招聘网站搜索Java开发岗位,其数量都是远超其它编程语言。

在领英上,Java开发者的招聘仅次于JavaScript/TypeScript和Python;在工资待遇方面,Java属于中等偏上,但不是最高的。

比如在领英上,搜索三种最接近的语言在欧洲和美国的岗位,分别是Java、JavaScript、Python,至于其它的语言,连它们的一半都没有。

至于Github上的中文项目,看看就可以了,千万别当真,都是些什么“xxx入门指南、Java基础、面试题、学习笔记”等,这些东西官网上都有,却东拼西凑的整出一个“xxx指南”,这种项目star数在多也没什么意义,与淘宝上的好评和微博转发量没什么差异,只能忽悠忽悠小白。

Oracle曾经统计过,全世界专业的Java程序员在1500万左右,JVM上运行的项目超过630亿,其中云上的JVM项目有410亿多。在嵌入式设备,如手机、PC、工作站、光盘、SIM卡、信用卡等,有超过500亿设备上在运行Java。

有很多人都有一种错觉,认为只有国内的在用Java,这只是你对Java语言的个人偏见,或者国内太卷导致的。

比如:

Maven拥有的依赖包超过4000多万个,2000多个仓库(不包括私有仓库),是世界上最大的代码仓库,每年新增的依赖数量在250万左右。

Java User Group每年都会举行分享Java知识,遍布于各个州;目前注册的Java用户组已经有超过400多个,长期处于活跃状态的有300多个,其中欧洲的Java用户占据了绝大部分。

Java社区中每年的开发者会议有上百个,比如,SpringOne、Devoxx、JavaZone、JavaOne等,其中Devoxx和JavaZone是欧洲最大的开发者社区会议。

自从Oracle JDK成为付费版之后,许多国外和国内一线互联网公司都有自己定制化的JDK版本,比如Google、X(Twitter)、Apple、字节、美团、阿里。

在Github上,Java拥有的仓库数量仅次于Python。另外,在2021年,log4j被爆出有漏洞,全球受影响的企业超过一半,有的国家考虑到安全性,关闭了部分互联网,这足以说明该日志库在企业中是非常受欢迎的。

Java语言、GC、JVM在不断的完善和发展,引入了一些现代语言具有的新特性和语法糖。比如,Java JDK 21新增加了不少功能,如记录模式、Switch模式匹配、分带ZGC生产功能、虚拟线程、Main程序简化、字符串模版、未命名变量和模版等预览功能,这些功能在未来很可能成为Java的基础语法。

Github上的Java中文项目看看是可以,但千万别当真。如果你真的想去找开源工具,我建议你去正规开源渠道找,如Eclipse、Apache、couch、mongo、IBM等。

如果任何一门语言真的是国人在做,这门语言绝对活不过三个月。主要是国人做事太过于功利化,捞不到好处是不会给你维护和发展的,比如阿里之前的dubbo框架,当初有很多小企业都在使用,后来直接就不维护了,这你敢再继续使用?

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

英伟达RTX 4090即将在10月份停产,RTX 50震撼来袭,你准备好了吗?

据多家媒体报道,英伟达(NVIDIA)及其合作伙伴计划于2024年10月停止生产其旗舰级显卡GeForce RTX 4090及其衍生型号RTX 4090D。尽管该计划尚未得到官方正式确认,但多家媒体和供应链消息均指出,这一决定旨在为即将到来的新…

vscode 配置rust格式化的正确方法

vscode 配置rust格式化的正确方法: 在settings.json里输入: "[rust]": {"editor.defaultFormatter": "rust-lang.rust-analyzer","editor.formatOnSave": true}

golang学习笔记6-更方便的转换、自定义包及网络部署【推荐收藏】

在上一个笔记中,我讲了基本数据类型的转换。不难发现,string和基本类型的互转比较麻烦,所以我自定义了一个包strtrans,封装了四个函数:ToString(),ToInt(),ToFloat(),ToBool()。其中ToString()适用于整数型&#xff0c…

关于字节 c++

字节的介绍 字节是计算机中最小的存储单位,通常由8个二进制位组成,用来存储一个字符。在C中,字节也是基本数据类型之一,用关键字"byte"来表示。字节主要用于存储一些较小的数据,如整数、字符等。字节的大小…

UE5入门

1.快捷键 工欲善其事,必先利其器,所以学习UE关卡编辑器快捷键必不可少 1.1Actor 选中actor , Q:选择模式 W:平移 E:旋转 R:缩放 CtrlB:打开Actor文件位置 F:聚焦 Ctr…

RP2040 C SDK GPIO和IRQ 唤醒功能使用

RP2040 C SDK GPIO和中断功能使用 📑RP2040 中断功能简介 Each core is equipped with a standard ARM Nested Vectored Interrupt Controller (NVIC) which has 32 interrupt inputs. Each NVIC has the same interrupts routed to it, with the exception of the…

Python办公自动化教程(002):PDF的拆分与合并

1、PyPDF2 介绍 介绍: PyPDF2是一个用于处理PDF文件的Python库,它提供了丰富的功能来读取、编辑、合并、拆分PDF文档,以及提取文本、图像和其他内容。 功能: 读取PDF:PyPDF2可以轻松地打开和读取PDF文件,获…

计算机丢失mfc110.dll是什么原因与有哪些解决方法详解

丢失动态链接库文件(DLL)是比较常见的一种情况,其中之一就是“计算机丢失mfc110.dll”。这个问题通常是由于系统文件损坏或缺失引起的,给计算机的正常运行带来了困扰。为了解决这个问题,我总结了以下几种方法&#xff…

1512. 好数对的数目

目录 一&#xff1a;题目&#xff1a; 二&#xff1a;代码&#xff1a; 三&#xff1a;结果&#xff1a; 一&#xff1a;题目&#xff1a; 给你一个整数数组 nums 。 如果一组数字 (i,j) 满足 nums[i] nums[j] 且 i < j &#xff0c;就可以认为这是一组 好数对 。 返…

状态模式:将对象行为与状态解耦

状态模式&#xff08;State Pattern&#xff09;是一种行为设计模式&#xff0c;它允许对象在其内部状态改变时改变其行为&#xff0c;使对象看起来好像修改了其类。 状态模式的核心思想是将对象的行为封装在不同的状态对象中&#xff0c;每个状态对象都代表了对象在某一特定状…

校园美食探索者:Spring Boot开发的分享平台

第二章 系统分析 2.1 可行性分析 可行性分析的目的是确定一个系统是否有必要开发、确定系统是否能以最小的代价实现。其工作主要有三个方面&#xff0c;分别是技术、经济和社会三方面的可行性。我会从这三个方面对网上校园周边美食探索及分享平台进行详细的分析。 2.1.1技术可行…

Redis数据结构之list列表

一.list列表 列表相当于数组或者顺序表 它里面的元素是有序的&#xff0c;也就是可以通过下标进行访问。这里的有序的含义是要根据上下文区分的&#xff0c;有的时候&#xff0c;有序指的是升序/降序&#xff0c;有的时候有序指的是顺序很关键&#xff0c;俩个元素交换后就不…

<<编码>> 第 16 章 存储器组织(4)--内存 示例电路

内存内部结构 info::操作说明 译码器用于写入, 操作同上 选择器用于输出, 操作同上 地址信号同时控制译码器和选择器, 注意地址的高位在右(比如 001 实际是 100, 选择的是 Q6 和 I6) 缺省情况下, 内部数据全是 0. 读者可先通过译码器写入, 再通过选择器输出 primary::在线交…

YOLO原理实现

YOLO&#xff08;You Only Look Once&#xff09;是一个标志性的目标检测模型&#xff0c;可以快速分类并定位图像中的多个对象。本文总结了YOLO模型中所有关键的数学操作。 第一步&#xff1a;定义输入 要使用YOLO模型&#xff0c;首先必须将RGB图像转换为448 x 448 x 3的张…

再看Java-笔试

放在前面的话 最近确实有些空闲&#xff0c;分配的功能从一开始的两眼一黑到现在的一上午就能完成&#xff0c;这何尝不是一种进步呢。 该说不说&#xff0c;海康的API问题相比较其他第三方的API还是蛮多的&#xff0c;而且10月份人工客服还会停运&#xff0c;不过到那个时候…

【CTF】Nginx日志注入

Nginx日志注入&#xff1a; 日志包含漏洞的成因还是服务器没有进行严格的过滤 &#xff0c;导致用户可以进行任意文件读取&#xff0c;但是前提是服务器需要开启了记录日志的功能才可以利用这个漏洞。 对于Apache&#xff0c;日志存放路径&#xff1a;/var/log/apache/access.l…

华为HarmonyOS灵活高效的消息推送服务(Push Kit) - 5 发送通知消息

场景介绍 通知消息通过Push Kit通道直接下发&#xff0c;可在终端设备的通知中心、锁屏、横幅等展示&#xff0c;用户点击后拉起应用。您可以通过设置通知消息样式来吸引用户。 开通权益 Push Kit根据消息内容&#xff0c;将通知消息分类为服务与通讯、资讯营销两大类别&…

【Qt】QSS的设置方式

QSS的设置方式 QWidget 中包含了 setStyleSheet ⽅法, 可以直接设置样式. 上述代码我们已经演⽰了上述设置⽅式 还可以通过 QApplication 的 setStyleSheet ⽅法设置整个程序的全局样式. 设置全局样式&#xff0c;可以将界面上所有的样式都集中到一起来组织。 全局样式优点:…

图神经网络的新篇章:通用、强大、可扩展的图变换器

人工智能咨询培训老师叶梓 转载标明出处 图变换器&#xff08;Graph Transformers, GTs&#xff09;因其在处理节点间全局依赖关系方面的能力而受到广泛关注。然而&#xff0c;现有的GTs模型在处理大规模图时面临着计算复杂度高、泛化能力有限等问题。为了解决这些问题&#x…

UnLua扩展接口

一、在蓝图中创建接口 1、创建BlueprintInterface 2、声明接口函数 3、继承接口 注意&#xff0c;接口不需要绑定Lua&#xff0c;也没有Bind按钮 二、在Lua中实现接口函数 1、实现接口函数 BP_Player.lua function BP_Player_C:UpdateAiming(IsAiming)if IsAiming thensel…