对程序员来说,编程语言就是武器,但有的武器好用,有的武器不好用,有的武器甚至会杀了自己。
C语言是M1式加兰德步枪,很老但可靠。
C++是双截棍,挥舞起来很强悍,很吸引人,但需要你多年的磨练来掌握,很多人希望改用别的武器。
Perl语言是燃烧弹,曾经在战场上很有用,但现在很少人使用它。
Java是M240通用弹夹式自动机枪,有时它的弹夹是圆的,但有时候不是,如果不是,当你开火时,会遇到NullPointerException问题,枪就会爆炸,你被炸死。
Scala是M240通用机枪的变种,但它的使用手册是用一种看不懂的方言写的,很多人怀疑那只是一些梦话。
JavaScript是一把宝剑,但没有剑柄。
Go语言是一种自制的“if err != nil”发令枪,每一次发射后,你都必须要检查它是否真的发射了。
Rust语言是一种3D打印出的枪。将来也许真的能派上用场。
bash是一个十分碍手的锤子,你抡起它时会发现所有东西看起来都像钉子,尤其是你的指头。
Python是一种“v2/v3”双管枪,每次只能用一个管子发射,你永远不知道该用哪个管子发射好。
Ruby是一把外嵌红宝石的宝刀,人们使用它通常是因为看起来很炫。
PHP是水管子,你通常会把它的一段接到汽车的排气管,另一端插进车窗里,然后你坐进车里,开动引擎。
Mathematica是一种地球低轨道粒子大炮,它也许能够干出很神奇的事情,但只有付得起费用的人才能使用它。
C#是一种强悍的激光大炮,架子一头驴子上,如果从驴子上卸下来,它好像就发不出激光。
Prolog语言是一种人工智能武器,你告诉它要做什么,它会照做不误,但之后,它会弄几个终结者出来,烧掉你的房子。
Lisp语言是一把剃须刀,有很多款式。只有寻求刺激和危险的人才会使用它。
scrolling="no" frameborder="0" class="vote_iframe js_editor_vote_card" data-display-style="height: 523px;" data-display-src="/cgi-bin/readtemplate?t=vote/vote-new_tmpl&__biz=MjM5MzM3NjM4MA==&supervoteid=1804742&token=32611767&lang=zh_CN" data-src="/mp/newappmsgvote?action=show&__biz=MjM5MzM3NjM4MA==&supervoteid=1804742#wechat_redirect" data-supervoteid="1804742" allowfullscreen="" src="http://mp.weixin.qq.com/mp/newappmsgvote?action=show&__biz=MjM5MzM3NjM4MA==&supervoteid=1804742&uin=&key=&pass_ticket=&wxtoken=&mid=401571052&idx=3" style="margin: 0px; padding: 0px; max-width: 100%; display: block; width: 670px; height: 945px; background-color: transparent; border-width: 0px; box-sizing: border-box !important; word-wrap: break-word !important;">
本文属翻译作品,英文原文标题是:If programming languages were weapons。若无特别说明,英文原文及其衍生作品均使用知识共享署名-相同方式共享(Creative Commons)协议。您可以自由复制、散布、展示及演出本作品;若您改变、转变或更改本作品,仅在遵守与本作品相同的授权条款下,您才能散布由本作品产生的派生作品。
本文是在程序师网首次发表。文章内容属作者个人观点,不代表本站立场。