京公网安备 11010802034615号
经营许可证编号:京B2-20210330
互联网的下半场,科技公司为面对更加严峻的竞争环境,越来越重视开源节流。而对于身处其中且撑起 IT 半边天的技术人,如今如何了?从技术角度来看,其又该作何改变顺应潮流?
接下来,我们将从 JetBrains 最新发布的《2019 开发人员生态系统现状》报告中一窥究竟。
JetBrains 通过调查全球 7000 名开发者,解析出开发者们在日常软件开发中最常使用的语言、框架,从而探索各种编程技术的最新趋势,希望可以帮助更多的开发者获取适合自己的技能。
01
过去一年,哪些编程语言被使用?
工欲善其事,必先利其器。作为程序员们的看家利器之编程语言,倘若开发者们对其掌握得越深那么对自己的职业发展越有益。但是由于每一年不同行业的技术发展各有偏重,导致数百种编程语言的流行度也会受到影响。
那么在过去一年中,开发者主要使用的编程语言有哪些?
对此,JetBrains 根据最新的数据报告结果得出,最受欢迎的编程语言是 Java 和 Python。其后是 C# 和 JavaScript,两者不相仲伯。但如果结果按示例大小标准化,那么 C# 是最受欢迎的语言。详情如下所示:
02
首选的编程语言有哪些?
在使用的编程语言中,并不意外,JavaScript 当选最常用的语言。其次为 Java、Python。
除此之外,JetBrains 还发现,似乎有一些“辅助”语言 即主要用作其他语言,包括:HTML、SQL 和 Shell 脚本语言。很多软件开发人员练习过这些辅助语言,但很少有人将它们作为主要语言。例如:56% 的人练习过 SQL,但只有 19% 的人称它为主要语言,仅 1.5% 的人将它作为第一语言。
从另一方面而言,Java 是独占鳌头的语言。其用户中有 44% 只使用或首先使用 Java。其后是 JavaScript,份额“仅有” 17%。
接下来,我们将详细解析。
03
最常用的整体编程语言——JavaScript
从上面的结果中,除了有 69% 的使用者外,还有 5% 的开发者计划采用/迁移到 JavaScript 语言。
其实一直以来,JavaScript 横扫了很多编程语言榜单,而它之所以如此流行,主要是因为在 Web 前端、客户端乃至物联网等项目开发中都避不开 JavaScript 的使用,且凭借简单易学、丰富的扩展功能等特性,JavaScript 也吸引了不少开发者的关注。
在 JavaScript 语言中,JetBrains 还针对常用的框架做了调查。根据报告显示,React 是业界流传的前端主流三大框架 React、Vue.js、Angular 中使用率最高的,占比高达 58%。同时,JetBrains 也表示,Vue.js 的流行度正逐年增长,自去年以来,份额已经占到 11%,几乎是 2017 年的一倍。在本次受访者中,也有 41% 的开发者表示主要使用 Vue.js 框架。
对于编辑器的选择,使用 JavaScript 的开发者中有 51% 的受访者称常用的 IDE 为 VS Code。
此外,还有 44% 的 JavaScript 开发人员经常使用 TypeScript。2019 年开发人员总计 1/4 在用它,而去年为 17%。在前端开发中,程序员们大多喜欢使用 CSS 为样式表语言。
04
最流行的编程语言——Java
如今已有 24 岁的 Java,早已不再年轻,但依然是最流行的编程语言。
不过,自从 Oracle 将 Java 的更新周期改为一年两次之后,很多开发者“苦不堪言”。这不 Java 12 刚发布了三个月,Java 13 就已进入了特性冻结阶段。但是根据报告调查结果显示,无论 Java 怎么更新,Java 8 依然是开发者最常用的版本,占比高达 83%。另一个长期版本 Java 11 的使用率仅占 22%。
另外,Java EE 8 版本也是开发者最常使用的,占比 39%。其次,有 14% 的受访者称经常使用 Java EE 7。
在 Java 开发者中,常用的应用程序服务器为 Apache Tomcat。
对于不用应用服务器的程序员而言,有 61% 的受访者表示会选用 Spring Boot 框架。与此同时,Spring Boot 也是最流行的 Java Web 框架,相较去年,其使用率增长了 14%。
根据 JetBrains 官方统计,有 93% 的 Java 开发人员使用 JUnit 进行单元测试,而 51% 的人使用 Mockito。
此外,与 JavaScript 开发者有所不同,Java 开发者更习惯使用 IntelliJ IDEA IDE。另外,使用 Eclipse 或基于 Ecplise 的开发者占比 17%。
05
最有前途的编程语言——Go
为软件开发而生的 Go 语言,可以在不损失应用程序性能的情况下降低代码的复杂性。而在一众编程语言中,Go 成为最有前途的语言。因为在 2017 年时,Go 语言的份额只有 8%,现如今在 Google 的不断扶持以及更多项目的应用下,Go 已经达到了 18% 的份额。此外,有 13% 的受访者还表示愿意采用或迁移到 Go 语言。
对于 Go 语言的使用,JetBrains 表示,多数人使用单个全局 GOPATH。在同时编辑多个项目的人中,甚至有 2/3 的人仍不倾向于每个项目使用一个 GOPATH。
据报告结果显示,才出现不久的 Go 模块,如今已经有 40% 的 Go 开发者已经在使用它,还有 17% 的人希望迁移过来。
此外,Gin 是 Go 程序员常用的 Web 框架。
06
学习最多的语言——Python
要论过去一年间最火的领域是哪个?
想必不少业界人士都有所了解,那就是人工智能领域。
要问最火的编程语言是哪种?
那么非 Python 莫属了。
在近几个月的 TIOBE 编程语言排行榜中,Python 更是力压 C++,占据最受欢迎排行榜的 Top 3。而在这次的调查中,Python 成为开发者最想要掌握的技能之一。且有 27% 的受访对象表示在过去 12 个月中开始或仍在持续学习 Python。对此,或许不少开发者发问,使用 Python 到底可以做什么?
据报告显示,49% 的开发者使用 Python 做数据分析,其次,46% 的受访者将其用于 Web 开发,还有 42% 的人用于机器学习方面。
而除了 Python 之外,58% 的受访者称还会使用 Numpy 数据科技框架。
相比 Java,Python 版本的碎片化显然没有那么严重。对于主流的 Python 2 和 Python 3 版本,越来越多的开发者开始向更新的 Python 3 版本迁移:去年还有 1/4 的人使用 Python 2,而今年有 9/10 的开发者宣布将使用 Python 3。探究其缘由,主要是因为 Python 2 和 3 版本之间存在诸多的不兼容性。
07
开发者常用的操作系统
因微软战略的改变,Windows 已从软件之列成为用户的一种服务。不过,大多数开发者的开发环境还是建立于 Windows 操作系统之上,其次 49% 的用户使用 macOS,48% 的受访者使用 Unix 或 Linux。整体而言,这三种操作系统的使用率相差并不大。
在移动领域,还是以 Android 系统为主。
08
工具
对于工具的选择,JetBrain 官方表示,89% 的开发人员在某种程度上自定义其 IDE。此外,据调查数据显示,多数开发人员投入暗黑的阵营:83% 的人更喜欢暗色调主题的 IDE 编辑器。
09
软件开发现状
一直以来,程序员这一行业是以高薪出了名,那么对于开发者而言,何种开发工作最受欢迎?其从事 IT 行业究竟是兴趣使然还是为了养家糊口?
根据《2019 开发人员生态系统现状》报告显示,Web 后端在程序员岗位中最受欢迎,有 60% 的受访者称选择 Web 后端以谋生,其中 39% 的 Web 后端开发者表示兴趣使然选择了该职位。
其次,受欢迎的岗位分别有 Web 前端、移动应用程序、库/框架。
在各大科技公司纷纷拥抱开源之际,事实上,很多开发者因工作、时间、后期维护等因素并不能完全拥抱开源。对此,仅有 21% 的受访者表示每年会有几次参与开源项目。
此外,有 16% 的开发者表示,在他们的项目中不做任何测试。但在全职高级开发人员中,这个统计数据降至 8%。
10
AI 是否会取代程序员?
古人有句谚语叫日有所思夜有所梦,据报告显示,工作中编程越多(作为主要活动)的人就越有可能在梦中编程。
在 AI 逐步渗透至各个领域之际,AI 威胁论一直从未停歇,就连英国著名物理学家史蒂芬·霍金曾经在采访时也表示过担忧,人工智能(AI)很快会成为一种新的生命形态,甚至某一天会超越人类。那么在相当于创造 AI 的开发者群体中,他们会怎么看?
据调查显示,57% 的受访者感受到了危险,并认为未来有一天 AI 会取代开发者的位置。不过也有 27% 认为 AI 绝不可能取代开发人员。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在数字化运营中,“凭感觉做决策” 早已成为过去式 —— 运营指标作为业务增长的 “晴雨表” 与 “导航仪”,直接决定了运营动作 ...
2025-10-24在卷积神经网络(CNN)的训练中,“卷积层(Conv)后是否添加归一化(如 BN、LN)和激活函数(如 ReLU、GELU)” 是每个开发者都 ...
2025-10-24在数据决策链条中,“统计分析” 是挖掘数据规律的核心,“可视化” 是呈现规律的桥梁 ——CDA(Certified Data Analyst)数据分 ...
2025-10-24在 “神经网络与卡尔曼滤波融合” 的理论基础上,Python 凭借其丰富的科学计算库(NumPy、FilterPy)、深度学习框架(PyTorch、T ...
2025-10-23在工业控制、自动驾驶、机器人导航、气象预测等领域,“状态估计” 是核心任务 —— 即从含噪声的观测数据中,精准推断系统的真 ...
2025-10-23在数据分析全流程中,“数据清洗” 恰似烹饪前的食材处理:若食材(数据)腐烂变质、混杂异物(脏数据),即便拥有精湛的烹饪技 ...
2025-10-23在人工智能领域,“大模型” 已成为近年来的热点标签:从参数超 1750 亿的 GPT-3,到万亿级参数的 PaLM,再到多模态大模型 GPT-4 ...
2025-10-22在 MySQL 数据库的日常运维与开发中,“更新数据是否会影响读数据” 是一个高频疑问。这个问题的答案并非简单的 “是” 或 “否 ...
2025-10-22在企业数据分析中,“数据孤岛” 是制约分析深度的核心瓶颈 —— 用户数据散落在注册系统、APP 日志、客服记录中,订单数据分散 ...
2025-10-22在神经网络设计中,“隐藏层个数” 是决定模型能力的关键参数 —— 太少会导致 “欠拟合”(模型无法捕捉复杂数据规律,如用单隐 ...
2025-10-21在特征工程流程中,“单变量筛选” 是承上启下的关键步骤 —— 它通过分析单个特征与目标变量的关联强度,剔除无意义、冗余的特 ...
2025-10-21在数据分析全流程中,“数据读取” 常被误解为 “简单的文件打开”—— 双击 Excel、执行基础 SQL 查询即可完成。但对 CDA(Cert ...
2025-10-21在实际业务数据分析中,我们遇到的大多数数据并非理想的正态分布 —— 电商平台的用户消费金额(少数用户单次消费上万元,多数集 ...
2025-10-20在数字化交互中,用户的每一次操作 —— 从电商平台的 “浏览商品→加入购物车→查看评价→放弃下单”,到内容 APP 的 “点击短 ...
2025-10-20在数据分析的全流程中,“数据采集” 是最基础也最关键的环节 —— 如同烹饪前需备好新鲜食材,若采集的数据不完整、不准确或不 ...
2025-10-20在数据成为新时代“石油”的今天,几乎每个职场人都在焦虑: “为什么别人能用数据驱动决策、升职加薪,而我面对Excel表格却无从 ...
2025-10-18数据清洗是 “数据价值挖掘的前置关卡”—— 其核心目标是 “去除噪声、修正错误、规范格式”,但前提是不破坏数据的真实业务含 ...
2025-10-17在数据汇总分析中,透视表凭借灵活的字段重组能力成为核心工具,但原始透视表仅能呈现数值结果,缺乏对数据背景、异常原因或业务 ...
2025-10-17在企业管理中,“凭经验定策略” 的传统模式正逐渐失效 —— 金融机构靠 “研究员主观判断” 选股可能错失收益,电商靠 “运营拍 ...
2025-10-17在数据库日常操作中,INSERT INTO SELECT是实现 “批量数据迁移” 的核心 SQL 语句 —— 它能直接将一个表(或查询结果集)的数 ...
2025-10-16