哈喽兄弟们!
近年来,Python 宛如一匹黑马,一骑绝尘,横扫 TIOBE、Stack Overflow 等榜单,如今在 IEEE Spectrum 发布的第九届年度顶级编程语言榜单中,Python 依然是 C、C++、C#、Java 等老牌语言无法比拟的。
关于编程语言的优劣,众说纷纭。不过,在今年这份报告中,我们也发现了一个让人出乎意料的结果,即根据就业需求榜单来看,在工作中最为吃香的竟是 SQL。接下来,我们也将与大家共同揭晓 2022 年 IEEE Spectrum 编程语言排行榜的最新情况。
Python 再次摘得桂冠
从去年来自 IEEE 官方的评价之「学习 Python。这是我们可以从其在 IEEE Spectrum 年度顶级编程语言交互式榜单中持续占据主导地位的最大收获」,再到今年 Python 依然位居榜首。
当前的编程语言圈,似乎真的没有一门语言像 Python 这样发展如此迅速。不久前,CSDN 在调研国内万名开发者发布的《2021-2022 中国开发者调查报告》也验证了这一点。
在种种的数据之下,全民之间刮起了一股学习 Python 的热潮以及焦虑,仿佛不学 Python 就已经落后了。
然而,合理分析,得益于 Pandas、Scikit-learn 等流行的 ML 库,Python 成为数据科学、数据分析和机器学习等领域的首选语言。商汤科技研究总监陈恺也曾表示,「Python 是深度学习必备语言」。同时,有数据统计,市场对具有 ML 知识的专业人士需求不断增长,预计到 2024 年,ML 工作价值将达到 310 亿美元。在技术驱动的背后,Python 的热度水涨船高也属于意料之中。
那是否意味着人人都必须要学习 Python 才有出路?其实不然,由于 Python 的多功能性和简单易上手的特性,它可以对许多不同的工作角色有所帮助。如果你对它感兴趣,或者你的职业与软件、网络、数据、产品或设计有关,可以学习一些基础知识,多少会有些帮助。
不过,Python 的爆火也不乏有不少一些“炒作”的身影。对此,IEEE 官方也指出了这一点,其表示,“事实上,C 和类似 C 的大型语言(如 C++、C#)的流行度在一定维度上已经超过了 Python。”
除了以上,在今年榜单中,Java 和 JavaScript 也仍然很受欢迎,其中 JavaScript 受到网站和浏览器内工具日益增加的复杂性的推动。
工作中最吃香的语言:SQL、Java 和 Python
当涉及到找工作时,在这些编程语言的中坚力量中,SQL 的受欢迎程度不断上升。根据 IEEE Spectrum 2022 年顶级编程语言榜单显示,SQL 在就业需求中位居第一。不过,该排名主要综合了 IEEE Job 网站和 CareerBuilder 的指标。
对于一门查询数据库的语言 SQL 能够从去年的第 10 位一下跃居到今年的第一位,不少网友感到好奇。因为过去只有运维、Web 以及数据从业者才使用到 SQL。
针对这一点,IEEE 的研究人员在查阅了大量的工作职位招聘列表后发现,SQL 需求量如此大的原因并不是很多雇主只招聘 SQL 编码人员,而是他们想要应聘者在掌握了某一种特定语言的基础上也具备 SQL 能力,譬如掌握了 Java 或者 C++,也要具备 SQL 开发技能。
在探索 SQL 的深度应用时,研究人员得出结论:这可能是因为今天许多应用程序涉及到前端、中间件层,以此基于网络与后端数据库的通信来消除本地资源限制。
对此,MySQL 之父 Michael “Monty” Widenius 在《新程序员 004》谈及近些年数据库领域发展的巨大变化时说道,“在过去的五年或七年间,学习 SQL(结构化查询语言)开始成为一种趋势。”除此之外,在当前的互联网公司中,不少产品经理和运营也被要求需要掌握 SQL 能力,因为掌握 SQL 基础能力后,就可以在处理数据时,大大地提高效率。
研究人员也表示,“既然有这么多需要用 SQL 实现场景,为什么还要重新造轮子,试图去破解自己的数据库和相应的网络接口协议呢?很有可能已经有一个适合你的使用情况”。因此,「它(SQL)可能不是最迷人的语言,也不是你用来实现下一个伟大的算法的东西,但在 SQL 方面的一些经验是你的宝贵财富。」
最后,研究人员表示,如果对网络安全(攻击或者防御)方面感兴趣,也不妨试一试古老的汇编语言。因为在职位需求上,有不少网络安全厂商有这样的技能门槛设置。
趋势榜:Python、Java、C
值得一提的是,IEEE Spectrum 2022 年顶级编程语言榜单改进和简化了交互式排名工具,不过整体还是结合不同来源的多个指标进行统计,如 GitHub、Google、Stack Overflow、Twitter 和 IEEE Xplore。原始数据被规范化,并根据所提供的不同排名进行加权,例如,Spectrum 的默认排名在很大程度上偏重于 IEEE 成员的兴趣,而 Trending 则更重视论坛和社交媒体的指标。
今年这份报告中,Trending 榜单和其他两个(Spectrum 默认榜单和 Jobs)排名有所不同,Top 5 分别是 Python、Java、C、JavaScript 和 C++。
编程语言的争论
其实一直以来,业界关于编程语言的分歧一直存在。
仅从分类上,IEEE Spectrum 自身也犯过难。Spectrum 指出很多编程语言划分本身就存在很大的争议,尤其是在 HTML/CSS 方面。也许有不少人认为 HTML/CSS 并不完全被归为编程语言之列,但 Spectrum 认为除非在高度人为的条件下,否则其判定 HTML/CSS 就是一种编程语言,因为其源代码中的标签主要是作为指令来做一些事情。此外,Spectrum 在今年也明确将一种语言的超集或子集给单独列了出来,如以前 IEEE Spectrum 把 Typescript 和 JavaScript 放在一起统计,今年他们将 TypeScript 独立了出来。
在排名上,随着不同的技术及领域发展,榜单肯定会产生一定的波动。其中不少人也表示,”就从 Python 发展来看,Python 作为 BASIC 的现代替代品是可以的。不幸的是,在某个时候,大众开始过度炒作它,人们开始产生用 Python 开发肯定会优于其他任何语言的极端想法。“而作为这个时代的开发者,根据自己的工作需求、兴趣爱好,择所需即可,也正如一位网友所述,「凭借 40 年的 IT 经验,我可以自信地说,无论你采用哪种编程语言,只要你能够胜任使用它,它就会过时。」
Python爬虫实战100例:代码总是学完就忘记?100个爬虫实战项目!让你沉迷学习丨学以致用丨下一个Python大神就是你!
原文链接:https://spectrum.ieee.org/top-programming-languages-2022
作者:STEPHEN CASS