TIOBE 12 月榜单已于日前公布,在最新的排行榜中,C 语言仍高居榜首,其次分别是 Java、Python 和 C++。在编程语言这一领域中,许多编程语言都会随着时间的推移而经历人气的激增,以及历史迭代之后的陨落。

为了更好地了解行业发展,TechRepublic 则面向一些行业内的专业人士进行了一次采访,旨在了解最令人讨厌的编程语言是哪些。最后得出的结论为,Java、Javascript、C++ 以及 Perl 名列前茅。

对此,VMware 的工程总监 Tom Hatch 认为,大众对一种语言的讨厌程度与其流行程度成正比,所以往往最讨厌的语言也是最流行的语言,或者说是最有威胁性的语言。

图片:iStock/pcess609

Java

有时,开发人员对某一特定语言的特别不屑可能与开发人员对编程语言的熟悉程度有关,而不是对该语言有什么内在的负面情绪所致。Hatch 就表示,虽然他觉得 Java 是一门伟大的语言,但他个人却讨厌 Java。因为 Java 是一种严格执行 OOP 结构的语言,而大多数开发人员都不了解面向对象编程(OOP)结构。

Hatch 称,Java 在 90 年代后期开始就在行业中占据了一个主导地位,并在接下来的时间里一直保持着广受欢迎的态势。但也正因如此,它被许多开发人员深深地憎恨。

另一方面,随着语言流行程度的提高,其对开发人员的技能要求也越来越高且多,这在无形中增加了开发者的压力。一位名为 Monica Lent 的受访者认为,许多开发人员对 Java 抱有强烈的负面情绪,可能正是因为该语言是他们在职业生涯早期第一次接触到的语言。

Lent 称,许多有经验的工程师在大学里学习了 Java 并作为他们的第一门或主要编程语言。某种程度上,Java 所受到的憎恨可能是因为他们将这种语言与学习代码或学习一种新的编程语言的挫折感联系在了一起。

她还指出,大众对 Java 的狂热度正在持续下降。Python 在 TIOBE 的 11 月排名中超过了 Java 这一现象就是有力的论证。

JavaScript

JavaScript 在最新的 TIOBE 排名中排名第七,与其在 2019 年 12 月的排名一致。同时,自 2000 年以来,JavaScript 每年的平均排名都处在前 10 位。

nVisium 首席执行官 Jack Mannino 认为,JavaScript 在现实应用中可谓是一团糟。在设计上,JavaScript 鼓励使用全局变量之类的反模式,且 JavaScript 的强制类型转换也常常会让开发人员感到困惑。

Hatch 同样对 Javascript 提出了批评。他表示:“如果无处不在会滋生仇恨,那么 Javascript 就是典型”。Javascript  是唯一可以在网络浏览器中运行的通用语言。这也导致,凡是能被批评的地方,它就会被批评。

Javascript 最初并不是作为一种全功能的语言开发的,更多的是作为 HTML 的脚本扩展。这意味着该语言多年来不得不大量发展。而随着它的发展,生态系统也在发展,引入了越来越多的 Javascript 框架,这就导致了开发人员的疲劳以及难以跟上变化。

Tangram Vision 的首席执行官兼联合创始人 Brandon Minor 更是将 Javascript 描述为 "噩梦"。他表示,虽然该语言提供了最初容易学习的语法,但便利性也就到此为止了。Javascript 用户所感受到的 "痛苦"是编程界其他的语言用户无法比拟的。

C++

C++ 是比较受欢迎的编程语言之一,在最新的 TIOBE 排名中位列第四。自 1985 年以来,按照 TIOBE 的排名,C++ 平均每年都会进入前十名,从 1990 年到 2015 年,C++ 的平均排名一直保持在前三名。

Hatch 称,C++ 的受欢迎程度给它招致了来自许多领域的仇恨。具体来说,Hatch 将 C++ 描述为 "C 语言的面向对象扩展",具有 "一望无际的功能"。不过他也指出,随着语言功能越来越丰富,它们也会变得更加混乱。

Hatch 还表示,自己很喜欢 Linus Torvalds 所说的一句话,即“换句话说,要想做好的、高效的、系统级的、可移植的 C++,唯一的方法就是最终把自己限制在所有 C 语言基本可用的东西上”。而这也意味着 C++ 代码往往非常混乱,并且还有许多难以遵循和理解的 C++ 代码库存在。

Perl

编程界的不满并不只是针对长期以来的行业主力军。有趣的是,Hatch 还表明,Perl 是他最讨厌的编程语言之一。在最新的 TIOBE 榜单中,Perl 没能进入前 10名,总排名第 14,夹在 Swift 和 Ruby 之间。但总的来说,Perl 在过去的一年里的流行度还是有所增长,其在 TIOBE 的 2019 年 12 月榜单中的排名为第 20 名。

Hatch 称,“虽然 Perl 不再被广泛使用,但 Perl 代码仍在挥之不去”。Perl 通常被称为“Write Only”语言,这种对 Perl 的嘲讽强调了阅读 Perl 代码是非常困难的,即使对于一个经验丰富的 Perl 开发人员来说也是如此。更遑论多年来,Perl 也发生了很大的变化。这就意味着旧的 Perl 代码可能与较新的 Perl 代码之间也存在很大的差异。