如何让一群程序员打起来?问他们这个问题
另外两个是:
1.哪个操作系统最好?
2.哪个文本编辑器最好?
所以 – 和稀泥答案是:
每种编程语言都是为了满足需求而创建的。如果存在其他可以满足这种需求的语言,那么没有人会费尽心思去创造一种全新的语言。
这意味着,(通常)存在的每一种没有完全过时的语言对于某些特定的应用来说都是最好的
例如:
C 显然是编写操作系统内核的“最佳”——这就是它的设计目的。
但是 C 没有很好的面向对象的东西,而且有点过于简单化了。因此,对于开发游戏来说,这将是一个糟糕的选择:
C++ 具有面向对象的概念并且更复杂——显然是开发游戏的最佳——几乎所有的游戏都是用 C++ 编写的。
但是对于只想将快速脚本放在一起进行某种批量文件处理的人来说,C 或 C++ 都不是一个好的选择——所以 Python 可能是最好的选择。
但是 Python、C 和 C++ 将不是编程金融软件的最佳选择,因为它们不具备所需的保护和封装程度——所以 Java 可能是最好的选择。
但是 FORTRAN 有一些经过精心编写和测试的科学函数库——所以对于某些科学目的来说,它可能是比 Java、Python、C 和 C++ 更好的选择。
同时要在网络浏览器中运行,您需要“沙盒”——这就是 JavaScript 最擅长的——所以用它来创建网页界面。
因此,没有单一的“最佳”语言。他们总是最擅长某事,而不太擅长其他事情。
然而,肯定有一些“最糟糕”的语言。有些从一开始就设计得很糟糕,有些已经真正被取代了。
目前,最糟糕的语言是一些故意愚蠢的语言,比如 BrainF**k 和 Befunge – 但在严肃的语言中 – 毫无疑问,PHP 是仍然普遍使用的最糟糕的语言 – COBOL 紧随其后。
所以——虽然我可以告诉你,我认为 C++ 是最好的语言——而且我几乎将它用于所有事情。这只是因为我编写的软件种类。
对于其他人来说,JavaScript 或 Python 或 Java 或 Ruby 或 C# 或 ObjectiveC 或 FORTRAN 或 Lisp 或者……对于他们所做的事情来说“更好”。
除了 PHP 和 COBOL – 它们都非常糟糕 – 您应该继续使用它们的唯一原因是支持无法经济地重写的旧/大型项目。
哦 – Linux 是迄今为止最好的操作系统 – 而 emacs 很容易成为最好的文本编辑器!