如果程序员是士兵,那编程语言会是什么样的武器?

两味真火
 两味真火
发布于 2016年10月01日
收藏 17

如果程序员是士兵,那 C、C++、汇编、PHP、Perl、Python、JavaScript、Java、Scala、ActionScript、Objective-C、Swift、Go、Ruby 等编程语言 会是什么样的武器呢?本文摘编自 Chandra Penke 在 Quora 同名问答贴中的分享,3200+ 顶。

PHP 3 是电锯

对于开发 Web 应用的程序员大兵来说,它是最早的武器之一(在 Web 应用出现之前它就已经很受欢迎了)。它能完成工作,但是看起来有些麻烦,好在现在可供选择的工具已经越来越多了。(PHP 3的语法是个噩梦,导致代码维护起来很困难。php后来的版本在这方面似乎提高了很多)

Perl 是刺客手中的剑

对于想要分派任务的程序员来说,就像是刺客手中的剑。优雅而高能,可以快速击中目标(尤其如果它们是文本文件)。确保与刺客联盟保持良好关系,否则你也许会发现这个武器不是你能控制的。(Perl强大而复杂,但是语法和语义使得它很难被掌握,这导致无法识读,代码也很难维护。就像一个刺客,神秘但高效。)

Python是坦克

自我防御能力很好,坚固,并能确保摧毁你的目标。如果你是初学者你通常可以瞄准射击(经过一定的训练后)。如果你是一个专家,你可以有条不紊地部署征服你的领域。尽管它很有效,但有可能很慢。不过有了挥舞着的武士刀(C拓展)的超级士兵的支持,你可以选择解决任何潜在的缓慢问题。

JavaScript 是战斗机发出的导弹

JavaScript经历了好长时间才成为导弹。它最初只是一个炸弹,仅仅发出恼人而巨大的声音,但是多年来(尤其发布了V8,加上巨大的社区和一些非常棒的框架,又称真正可怕的战斗机技术)它演变成了一个不那么优雅但能快速解决问题的导弹。

Java 是从枪(JVM)里发出的子弹

Java 原本是从枪(JVM)里发出的子弹,然而枪支制造商决定去造不同的枪,所以很不幸,出现了外形类似子弹的轻微变种。然而,这使得 Java 的使用效率更高。

Scala 是来自火影忍者的分身影术

Scala 是来自火影忍者的分身影术,允许你创造自己的分身,可以完全压垮敌人。

ActionScript 2 是一台投石机

想像一下,它虽然使用起来简单,看起来也很有吸引力,但移动速度很慢,并且击中目标的速度甚至更慢。如果你有更好的选择,你为什么还用它?

Objective-C 是一柄没有原力的光剑

有些类似 C,但似乎有更多的样式,和一些额外的功能。你的敌人会认为你要么很傻,要么很酷(如果你有 Xcode 和其他开发者工具,你的敌人更有可能会认为你很酷)。

 C++ 是一柄带盾的剑

盾(OOP / RAII功能、模板等)可以帮助你远离一些危险,但如果没有明智使用,它也可以成为累赘。你可以甩掉盾,只带着剑冲刺(因为 C++ 是 C 的一个拓展集),但有经验的士兵知道如何带着盾和剑冲刺。

C 是武士刀

C 是武士刀,致命且光滑,它激励精通它的人拥有超越现实的力量。但要注意,如果你和很多武士挤在一个房间训练,你可能会意外地被伤到。(有编译器的帮助,C 最接近汇编语言,最有潜力编写高性能的代码。然而,注意那些可能不小心释放你的指针的初学者士兵。)

Assembly 是你自己的身体

如果你是李小龙或者超人,它就是你想要的全部。但是除非你出生在另一个星球拥有超人的力量,不是的话,就好好磨练你的身体和心灵来完善技艺,这样才能用好你的武器(编译器/解释器)。

Swift 是一把有拥有原力的光刀

你现在可以在不接触它们的情况下偏转爆破枪,移动对象,并让你的敌人彻底屈服对你敬畏。但是额外的力量也会伴随着一些黑暗面。(相比较于 Objective-C ,Swift 带来很多自由和能力,但增加的流动性有可能导致代码很难去理解和维护)

Go 是星际迷航中的移相器

具有未来色彩,圆滑,非常小,不需太多装饰就可以完成工作。要击败那些更强硬更有经验的敌人,你现在也许还需要使用另一个武器。(GO 仍然在改进,发展成为武器所需要的社区和支持基地,虽然这似乎在很快进行)。船长 Jean Luc Picard(谷歌)魅力超凡,领导能力出众,你保证可以重拳出击,很快拥有超越“击晕”和“杀死”敌人的设置(强大的库,工具,支持等)

Ruby 是光晕中跑出的幽灵

当它击中目标时非常令人满意,彰显着能力,但是有时操作慢很费力。(Ruby 有很多吸引人的优点,但是最大的缺点是当创建到一定规模时,它需要去匹配一些其他替代品的性能。)

Bash 是一架装有隐蔽货物的运输机,大部分是为需要运输其他士兵或武器准备的

在紧急情况下你可以卸掉隐藏的货物以减少一些损失。但是大部分情况下你还是想要利用它去部署,返回,远距离观察。(Bash 擅长将事情粘合起来,在它自己的角度上它也是一种编程语言。但是它最好做一小部分任务,把更重的任务留给其他语言。)

注:所有图片都来源于 Google 图片搜索。

稿源:伯乐在线,翻译: 伯乐在线 - Florence,校稿:艾凌风

英文出处:Chandra Penke

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:如果程序员是士兵,那编程语言会是什么样的武器?
加载中

最新评论(15

salem_-_
salem_-_
毫无意义的文章,都多少年了
刘冲
刘冲
说得好乱
郭大侠
郭大侠

引用来自“eechen”的评论

PHP在1995年发布1.0,1996年发布2.0,1998年发布3.0,2000年发布4.0,2004年发布5.0,2015年发布7.0(20周年里程碑版本).

PHP5:最流行最通用最具影响力的PHP版本.
PHP7:20周年里程碑版本,普遍为PHP应用带来了2倍甚至以上的性能提升.

文章不拿PHP5/PHP7来说事,偏偏拿什么PHP3,估计就只用过PHP3就给PHP下结论了吧.

引用来自“bbdlg”的评论

很简单,因为这篇文章是99年写的~
是的,大概那时就看过了,补了几种语言。
eechen
eechen
https://www.quora.com/If-programmers-were-soldiers-and-the-languages-were-weapons-which-weapon-would-each-language-be/answer/Chandra-Penke
这Quora上的一个回答,最后更新时间为 Updated Aug 23
1999年,别说Quora,连Facebook/Twitter都没有.
bbdlg
bbdlg

引用来自“eechen”的评论

PHP在1995年发布1.0,1996年发布2.0,1998年发布3.0,2000年发布4.0,2004年发布5.0,2015年发布7.0(20周年里程碑版本).

PHP5:最流行最通用最具影响力的PHP版本.
PHP7:20周年里程碑版本,普遍为PHP应用带来了2倍甚至以上的性能提升.

文章不拿PHP5/PHP7来说事,偏偏拿什么PHP3,估计就只用过PHP3就给PHP下结论了吧.
很简单,因为这篇文章是99年写的~
firstrose
firstrose
pascal和dephi是什么呢?没说。但是我倾向于认为是小医生——M.E.D
Raynor1
Raynor1
哈哈哈哈哈哈哈哈。可以的可以的可以的。SCALA。这一个设计得真棒。嘿嘿。
wuwenbin
wuwenbin
作者是Scalaer,鉴定完毕
notreami
notreami
Objective-C就别拿出说了,PHP都比它牛逼
孤火369
孤火369
php表示不服
返回顶部
顶部