参考链接:https://www.techrepublic.com/article/the-4-most-hated-programming-languages-experts-pile-on- JavaScript -c-and-more/
英文标题:The 4 most hated programming languages: Experts pile on
JavaScript , C++, and more
VMware 工程总监汤姆·哈奇(Tom Hatch)认为:“对一种语言的讨厌程度往往与它的流行程度成正比。
每个月,软件质量保证公司 TIOBE 都会公布其对*编程语言的综合排名。在最新的排名榜中,C 语言位居榜首,接下来依次是 Java,Python 和 C ++。
最近,我们邀请了很多行业内的专家谈谈他们讨厌的编程语言,并做了如下总结。
一、JAVA
有时候,如果某个开发者对特定语言不屑一顾,那与其说他是受到该语言已有的负面评论影响,倒不如说是他本身对那种语言的熟悉程度对他的影响更大。举个例子,哈奇说,尽管他觉得 Java 是一门伟大的语言,但他个人很讨厌Java,因为大部分开发者都不了解面向对象的编程(OOP)结构。
哈奇表示:“ Java 在 90 年代后期开始占主导地位,自那以后一直蝉联‘使用最广泛的编程语言之一’的桂冠。但即使如此,它依然被许多开发者深深地憎厌。Java是一种强有力地强制 OOP 结构的语言,它要求开发人员积极遵循该范例。然而,这样的特性增大了大型代码库的搭建和移交难度。”
随着一种编程语言的迅速发展和广泛应用,这种语言可以为某些人提供必要的能力。正如我们在之前讨论的那样,新生的编程语言要超越诸如Java之类的早期语言,可能要花费相当长的时间。甚至在 Java 诞生四分之一个世纪之后,它仍然是规划教育课程的一个常见部分。
从前是技术主管和工程经理,现在以独立开发人员的身份创建产品的莫妮卡·兰特(Monica Lent)解释说,许多开发人员可能对 Java 抱有强烈的反感,因为这是他们在职业生涯初期就开始接触的语言。
Lent通过电子邮件告诉我们:“当今许多经验丰富的工程师在大学里就将Java作为他们的第一或主要编程语言来学习。厌恶Java的原因可能是他们想起了从前学习编码的过程中遭遇到的挫败感”他还提到,在 TIOBE 的 11 月排名中,Python 排名超过 Java ,这证明了 Java 的受欢迎程度在持续下降。
二、 JavaScript
JavaScript 在最新的 TIOBE 排名榜中排在第 7 位,与 2019 年 12 月所保持的地位相同。自 2000 年来, JavaScript 每年平均排名均在前十,这足以证明 JavaScript 的影响力是长期的。并且在 2014 年的时候,JavaScript 由于评分激增,入选了 TIOBE 的 Programming 中语言名人堂(Language Hall of Fame)。这也表明,即使是长期流行的编程语言,仍然有可能因为各种原因引起开发者的不满。
nVisium 首席执行官 Jack Mannino 借由电子邮件告诉我们,“可能我的观点和别人有些不同,在我看来,虽然 JavaScript 普及程度很高,但事实上它的使用体验很糟糕。在设计上, JavaScript 鼓励开发者使用诸如全局变量之类的反模式,然而, JavaScript 的类型强制方法却常常使开发者感到困惑。”
在 JavaScript 还没广泛普及的时候,Mannino曾建议TypeScript修改 JavaScript 的许多缺点。哈奇同样也发表了有关 Java 的批评。他说:“如果无处不在意味着令人讨厌,那么 JavaScript 将会是这方面的典型代表。因为它是在网络浏览器中运行的唯一通用语言。这代表着,无论什么地方出错,他都会受到批评。”
哈奇继续说道:“ JavaScript 最初并不是作为一种全功能的语言开发的,而更多是作为 HTML 的脚本扩展而开发的,它这些年来一直在大量增长。”“生态系统随着 JavaScript 的不断发展引入了越来越多的框架,这使得试图跟上变化的开发者感到疲倦。”
Tangram Vision 的首席执行官兼联合创始人 Brandon Minor 将 JavaScript 描述为一场“噩梦”。他认为,尽管 Java 语言最初提供了易于学习的语法,但由于 JavaScript 的发展,这些方法早已不再适用。他在邮件里这样写道:“运行任何一个静态网页都需要认真的搭建和经验,其中大部分只是作为社区内的部落知识。除此之外,包装系统的依赖性经常相互干扰,甚至完全中断。”
三、C ++
在最新的 TIOBE 排名中,C++排名第四。自1985年以来,C++在TIOBE的排名中平均每年排名均在前10位,尤其从 1990 年到 2015 年一直保持在前三名。哈奇肯定了 C++的流行性,同时表示 C++“引起了很多领域的讨厌。”哈奇将C ++描述为具有“大量功能”的“ C 的面向对象扩展”,并指出“由于语言功能过于丰富,它们也可能变得过于混乱”。
“我喜欢 Torvalds(注:Torvalds 创造了 Linux 操作系统 )所说的,“换句话说,做好、高效、系统级和可移植 C++的唯一方法最终将自己限制在 C 语言中所有可用的东西上。” 这意味着 C++代码通常非常混乱,并且在那里很难遵循和理解 C++代码库。”
四、Perl
有趣的是,编程界的不满并不仅仅针对长期流行的编程语言。哈奇还提到 Perl 是他最讨厌的编程语言之一。
在最新的 TIOBE 列表中,Perl 未能跻身前十名,仅排名第 14 位,介于 Swift 和 Ruby 之间。但不管怎么说,Perl 的知名度提高了,它在 TIOBE 的排行榜上从 2019 年 12 月排第 20 名上升了。虽然 Perl 不再被广泛使用,但Perl代码的影响仍在继续。Perl 通常被称为 “Write Only” 语言,这种对 Perl 的抨击强调了阅读Perl代码是非常困难的,即使对于经验丰富的 Perl 开发人员也是如此。多年来,它也发生了重大变化,较新的 Perl 代码看起来与旧式的 Perl 代码完全不同。