写点什么

Jetbrains 发布 2019 开发者生态报告:Java 最主流,Go 最有前途

  • 2019-06-19
  • 本文字数:2240 字

    阅读完需:约 7 分钟

Jetbrains发布2019开发者生态报告:Java最主流,Go最有前途

近日,Jetbrains 发布了《2019年开发人员生态系统现状》报告。报告显示:Java 是最主流的编程语言,JavaScript 是最常用的整体编程语言,Go 是最有前途的编程语言,Python 是学习者最多的编程语言。该报告涉及约 7000 名开发人员在编程语言、开发项目、移动设备与工具使用等方面的数据。其中,中高级职称的受访对象占 78%。以下是我们从报告中得出的主要结论:

编程语言:


在过去一年里,最受欢迎的编程语言是 Java 和 Python。其后是 C# 和 JavaScript,两者不相仲伯。但如果结果按示例大小标准化,那么 C# 是最受欢迎的语言。



有一些语言主要起“辅助”作用,包括 HTML、SQL 和 Shell 脚本语言。很多软件开发人员练习过这些辅助语言,但很少有人将它们作为主要语言。例如,56% 的人练习过 SQL,但只有 19% 的人称它为主要语言,仅 1.5% 的人将它作为第一语言。从另一方面看,Java 是独占鳌头的语言,其用户中有 44% 只使用或首先使用 Java。其后是 JavaScript,份额“仅有” 17%。


Java 是最主流的编程语言。虽然 Java 10 和 11 日趋流行,但 Java 8 仍是使用最多的版本,使用者占比高达 83%,其次是 Java 11 ,占比 22%。





JavaScript 是最常用的整体编程语言。58%的受访者使用 React 作为 JavaScript 框架,其次是 Express 、Vue.js 、React Native 等等。其中,Vue.js 的流行程度逐年增长。自去年以来,份额已达到 11%,几乎是 2017 年的一倍。在编辑器方面,44% 的 JavaScript 开发人员经常使用 TypeScript。2019 年,1/4 的开发人员在使用它,而去年这一比例为 17%。





Go 是最有前途的编程语言。虽然 Go 是一种年轻的语言,但其用户相对成熟,它的使用份额已从 2017 年的 8% 大幅跃升到今年的 18%,多达 13% 的开发人员愿意采用或迁移到 Go 语言。此外,多数人使用单个全局 GOPATH。在同时编辑多个项目的开发者中,甚至有 2/3 的人仍不倾向于每个项目使用一个 GOPATH。虽然最近才出现 Go 模块,但 40% 的 Go 开发人员已经在使用它,还有 17% 的人希望迁移过来。


Python 是学习最多的语言。27% 的受访对象在过去一年中开始或仍在持续学习 Python。在使用版本上,由于 9/10 的开发人员宣布将在 2019 年使用 Python 3,Python 2 正在迅速减少。去年仍有 1/4 的人使用 Python 2。而且,有趣的是,大多数 C++开发人员声称 Python 是其最喜欢的语言。Web 开发和数据科学家仍是 Python 开发的两大主力。因为据称 Python 是数据科学的最佳工具之一,所以涉及数据分析和机器学习的 Python 开发人员数量如此众多毫不令人吃惊。数据分析比 Web 开发更受欢迎,机器学习则在今年超过 DevOps。除了 Python 以外,Django 和 Flask 目前仍是最流行的 Python web 框架。




移动设备与工具:


2/3 的移动开发人员使用本地工具开发用于移动操作系统的应用,约 1/2 的开发人员使用跨平台技术或框架,且 React Native 、Flutter、Cordova 的使用者较多。



89% 的开发人员在某种程度上自定义其 IDE。多数开发人员投入“暗黑”的阵营,83% 的人更喜欢暗色调主题的 IDE 编辑器。

数据库:

对大多数软件开发者而言,其工作总会以这样或那样的方式涉及数据库,但只有极少数从业者主要关注数据库。报告显示,56% 的受访者表示自己使用 SQL,但只有 3% 专门将 SQL 作为主要语言。



在数据库上,语言和数据库的配合使用上存在一定偏好。 例如,20% 的 Scala 开发人员使用 Apache Cassandra,而 70% 的 C# 开发人员使用 MS SQL Server。 MongoDB 在 TypeScript 开发人员 (45%) 和 Go 开发人员 (41%) 中非常流行。9/10 的 PHP 开发人员使用 MySQL,而一半的人使用 MariaDB。最 “SQL 的”数据库是 Oracle、MS SQL Server 和 ClickHouse,因为它们约 1/3 的用户以 SQL 作为其主要语言。70% 的受访对象对他们的数据库表示满意,不打算迁移或采用其他的。



连续两年,人们可以看到,使用 MySQL Workbench(从 30% 降至 24%)、phpMyAdmin(从 27% 降至 21%)以及命令行(从 27% 降至 24%)来管理数据库的受欢迎程度呈下降趋势。

DevOps :

关于开放运营,1/5 的受访者都深入参与基础架构开发。其中 15% 的从业者表示脚本语言 (bash / shell / powershell) 是其主要编程语言。



报告显示,配置管理工具 Chef 和 Puppet 今年的市场份额差不多,但它们加起来占据的市场份额仍略低于 Ansible。在使用服务器模板工具的开发者中,90% 使用 Docker。使用 Docker 的调查对象中有 74% 也在使用 Docker compose。


最常用的工具集是 Docker + Terraform + Ansible。在组合使用基础架构配置、服务器模板和配置管理的用户中,有 27% 的人使用它们。但使用 Docker 的人数是其三倍(没有配置管理,也不配置基础设施)。



Kubernetes 使用情况飞速增长,在 2017 年 份额 16% 的基础上增加了 13% 以上。



私有服务器仍略超过云服务器。但如果深入了解,人们会发现很多用户两者都使用。他们更倾向于将云服务器作为主要托管平台。



关于“在哪里托管数据库和/或服务和/或贵公司开发的应用程序”的答案,第一名并不令人感到意外。Google Cloud Platform 的份额超过了 Kubernetes 用户(一般是 41% 对比 28%),这意味着 Kubernetes 的增长可能会推动 GCP 的流行。


报告原文:https://www.jetbrains.com/zh-cn/lp/devecosystem-2019/


延伸阅读::


Go 语言是谷歌的,而非社区的


一张主流编程语言的变迁图,讲清程序员迁移模式


取代 JavaScript,Python 成为了被提问最多的编程语言


Go 会接替 Java,成为下一个企业级编程语言吗?


C++ 力压 Python 进入最受欢迎编程语言前三


再见,Python!你好,Go 语言


2019-06-19 17:3716769
用户头像
王文婧 InfoQ编辑

发布了 126 篇内容, 共 71.1 次阅读, 收获喜欢 275 次。

关注

评论

发布
暂无评论
发现更多内容

浅谈IM系统中离线消息、历史消息的最佳实践

WorkPlus

企业选择私有化部署的IM即时通讯软件,全力保护信息安全!

WorkPlus

Java有线程安全的set吗?,跳槽薪资翻倍

爱好编程进阶

Java 面试 后端开发

博睿数据携手F5共同构建金融科技从代码到用户的全数据链DNA

博睿数据

每周问答精选:PolarDB-X完全兼容MySQL吗?

阿里云数据库开源

数据库 阿里云 开源 polarDB PolarDB-X

OutOfMomeryError异常实例与处理,zookeeper面试题总结

爱好编程进阶

Java 面试 后端开发

redis优化系列(一)基于docker搭建Redis主从

乌龟哥哥

4月月更

Redis面试题汇总,mysql索引优化面试题常问

爱好编程进阶

Java 面试 后端开发

Java 方法的使用(方法重载、形参和实参调用关系,作为Java程序员都应掌握

爱好编程进阶

Java 面试 后端开发

Java经典算法题(二),这10个经典又容易被人疏忽的JVM面试题

爱好编程进阶

Java 面试 后端开发

interrupted()和isInterrupted()详述,百万数据分页查询的方法及其优化方式

爱好编程进阶

Java 面试 后端开发

Java文件读写原理和虚拟内存,面试阿里

爱好编程进阶

Java 面试 后端开发

RocketMQ msgId与offsetMsgId释疑(实战篇),腾讯技术官发布的“神仙文档”火爆网络

爱好编程进阶

Java 面试 后端开发

如何进行项目协同管理

阿里云云效

阿里云 项目管理 敏捷开发 项目协同 研发协作

Java BSON使用,Java研发岗必问30+道高级面试题

爱好编程进阶

Java 面试 后端开发

Apache Flink 在蔚来汽车的应用

Apache Flink

大数据 flink 编程 流计算 实时计算

智能手表的下半场,机遇与挑战并存

FinClip

MyBatis实现一对一,一对多关联查询,HTTPS面试常问全解析

爱好编程进阶

Java 面试 后端开发

PlatoFarm推出正式版游戏经济模型的特点分析

西柚子

Spring Boot 实战 :入门篇,想给金三银四找工作的程序员几点建议

爱好编程进阶

Java 面试 后端开发

Java基础12 面向对象~多态,java中级开发面试知识点

爱好编程进阶

Java 面试 后端开发

Java并发体系详解,聊一聊MySQL数据库中的那些锁

爱好编程进阶

Java 面试 后端开发

世界读书日晒出你的书单,有机会领取免费读书年卡!

InfoQ写作社区官方

书籍推荐 热门活动 2022世界读书日

Java程序员如何加入自己理想的大厂呢?本人来分享亲身经历的腾讯Java技术岗的面经。

爱好编程进阶

Java 面试 后端开发

Netty权威指南:Linux网络-I-O-模型简介,分享我在Java开发中走的一些弯路

爱好编程进阶

Java 面试 后端开发

IT人不仅要提升挣钱能力,更要拓展挣钱途径,腾讯技术官发布的“神仙文档”火爆网络

爱好编程进阶

Java 面试 后端开发

运行npm install命令的时候会发生什么?

华为云开发者联盟

node.js npm install npm install

Vue + Node.js 搭建「文件上传」管理后台

蒋川

Vue Node Node Exporter

java的反射用不好容易走火入魔?还可以用内省啊!,网易java面试题和答案

爱好编程进阶

Java 面试 后端开发

带你了解极具弹性的Spark架构的原理

华为云开发者联盟

spark mapreduce 内存 RDD Spark架构

Myabtis源码分析五-Mybatis配置加载完全图解,建造者模式的使用,涵盖Java各种技术栈

爱好编程进阶

Java 面试 后端开发

Jetbrains发布2019开发者生态报告:Java最主流,Go最有前途_编程语言_王文婧_InfoQ精选文章