本帖最后由 dcexpert 于 2024-9-5 09:55 编辑
来自:https://www.zdnet.com/article/the-most-popular-programming-languages-in-2024-and-what-that-even-means/?utm_source=tldrnewsletter
流行是什么?
那么哪种语言最受欢迎呢?这并不像你想象的那么容易回答。关键是要确定什么定义了流行。
这是一个如此悬而未决的问题,以至于有一篇 Wikipedia 文章专门用来衡量编程语言的流行度。本文介绍了衡量受欢迎程度的许多可能因素,包括:
语言名称在 Web 搜索中被提及的次数,例如 Google 趋势
- 提及该语言的招聘广告数量
- 教授或描述该语言的已售出书籍数量
- 估计以该语言编写的现有代码行数,这可能会低估公共搜索中不常见的语言
- SourceForge、Freecode 和 GitHub 上采用该语言的项目数量
- 论坛和新闻组中有关该语言的帖子数
即使这还不完整。您可以将其中一些指标添加到该列表中:
- 编程训练营销售的课程数量
- 世界各地参加编程课程的学生人数
- YouTube 上每种语言的视频数量
- Reddit 或 Stack Exchange 上关于某种语言的帖子数量
如果考虑到各国的受欢迎程度,这可能会变得更加复杂。某些语言在印度更受欢迎吗?在美国?在欧洲?
最重要的是,受欢迎程度不是一个单一的答案。
聚合多个调查
这就是问题所在。即使知道受欢迎程度可以根据许多不同的因素来衡量,学生和专业人士仍然想知道他们是否在将自己的职业生涯和公司引导到正确的方向。我们求助于来自 5 个组织的 9 个索引来收集我们的原始数据。这些是:
- PYPL 的:PopularitY of Programming Language 索引的数据来自 Google 搜索活动。它衡量给定语言的教程在 Google 上的搜索频率。这是兴趣的衡量标准,但不一定是使用情况的衡量标准。
- Tiobe:Tiobe 是一家软件质量服务公司。它根据“全球熟练工程师、课程和第三方供应商的数量”创建定期更新的索引。流行的网站 Google、Amazon、Wikipedia、Bing 和其他 20 多个网站都用于计算评级。这也不一定是使用情况的度量。
- GitHub 使用情况 2023: 每年,GitHub 都会进行一系列调查。它的总结报告读起来很吸引人。GitHub 的数据正在按使用情况衡量排名靠前的语言。
- Stack Overflow 专业开发人员:Stack Overflow 按用户配置文件测量使用情况。在这个指数中,它衡量的是自认为是专业程序员的受访者的使用情况。这很可能是以编码为生的人。
- Stack Overflow 学习编码:下一个指数衡量表示正在学习编码的受访者的使用情况。这个索引很有趣,因为它标记了新开发人员认为需要学习的语言。
- Stack Overflow 其他程序员: Stack Overflow 没有具体定义其他编码人员群体,但他们既不认为自己是新编码人员,也不认为自己是专业人士。我会把有能力的编码员放在这个名单上,但要么将其用作其他职业的一部分,要么使用编码进行项目,而他们的编码工作没有特别的报酬。同样,一个使用情况的衡量标准。
- IEEE Spectrum 索引:IEEE 是世界上最大的由科学家、工程师和相关专业人士组成的技术专业组织。Spectrum 指数衡量的是“加权到典型 IEEE 成员的概况”的编程语言兴趣。
- IEEE Jobs index:该指数被描述为“雇主正在寻找的东西”。
- IEEE Trending:该指数被描述为“寻求发现符合时代精神的语言”。将此视为哪些语言正在流行起来。
一些指数跟踪相对较少的语言,而另一些指数则花费了大量时间在长尾上。
结果是下图中的排名:
但问题是,这真的不能告诉你应该把注意力放在哪里。为了了解问题的核心,我做了一些数据分析。我汇总了来自所有 9 个来源的数据。然后,我根据每种语言在每张图表上的出现位置和出现次数对每种语言进行加权。我获取了前 19 个结果并生成了以下语言集群聚合图表。根据记录,我想要 20 个结果,但没有其他语言出现在 5 个或更多索引中,因此我们最终得到了 19 个。
如图所见,有 5 种语言集群。顶部集群包含 Python、JavaScript 和 Java。这些在 AI 编码领域都非常具有代表性。毫无疑问,您应该熟悉这三种语言。下一个集群包含基于 C 语言的经典语言,以及 SQL 和 TypeScript(这是一种更强大的 JavaScript 变体)。
下面是前段时间占主导地位的语言,用于构建和运营网站的 Web 语言,其次是一系列其他语言,这些语言要么越来越受欢迎(R、Dart、Ruby)。
最后,底部是 Swift,Apple 选择的语言。Objective-C 是 Apple 编程的先前语言,自从 Apple 推出 Swift 以来,它几乎从列表中消失了。但是,尽管 Apple 拥有众多开发人员,但 Swift 显然在程序员的兴趣中并不突出。
同样,这告诉我们什么?如果您了解现代编码,您就会意识到您不仅仅是在使用一种语言。您总是在为某些内容进行开发,无论是嵌入式系统、iPhone、Web 应用程序还是 Microsoft 服务器应用程序。
语言熟悉度只是拼图的一部分。例如,无论你多么喜欢 Python 或非常古老但仍在滴答作响的 C,如果你正在编写 WordPress 插件或主题,你就是在用 JavaScript 和 PHP 编写。其他语言有多受欢迎并不重要。如果您的雇主是 Microsoft 开发人员,您最好了解 C#。如果您打算为 AI 应用程序编写代码,则需要 Python,并且快速掌握 R 可能没有什么坏处。
|