![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 E-Troy 版主 ![]()
![]() ![]() |
程式語言跟我們的生活習習相關,舉凡和電子控制有關的裝置,都會靠程式來控制,但對外行人而言用一般方式來說明程式特性可以說是有聽沒懂。 一位名叫BJORN TIPLING的軟體工程師,用武器來比喻每種程式語言,生動地介紹每種語言的特性: C就像是M1加蘭德步槍,老舊但可靠。 C is an M1 Garand standard issue rifle, old but reliable. ![]() C++就像雙節棍,揮舞起來攻擊力強,但修練過程十分痛苦,你常會想要不要改練其他的兵器。 C++ is a set of nunchuks, powerful and impressive when wielded but takes many years of pain to master and often you probably wish you were using something else. ![]() Perl就像燃燒彈,曾經實用過一次,但仍然少數人還在使用。 Perl is a molotov cocktail, it was probably useful once, but few people use it now. ![]() Java就像彈鏈式的M240通用機槍,彈鏈上有時有子彈,有時沒有,沒有子彈時仍持續開火的話,會發生NullPointerException問題,槍身會自爆,把你一起炸死。 Java is a belt fed 240G automatic weapon where sometimes the belt has rounds, sometimes it doesn’t, and when it doesn’t during firing you get an NullPointerException, the gun explodes and you die. ![]() Scala是Java機關槍的變種,教學手冊上是一堆無法理解的方言,令人覺得根本胡言亂語。 Scala is a variant of the 240G Java, except the training manual is written in an incomprehensible dialect which many suspect is just gibberish. ![]() JavaScript是一把沒有劍柄的利劍。 JavaScript is a sword without a hilt. ![]() Go是一把自製的“if err != nil”手槍,每開一槍,就得檢查到底有沒有確實發射出去。 Go is the custom made “if err != nil” starter pistol and after each shot you must check to make sure it actually shot. Also it shoots tabs instead of blanks. ![]() Rust是一把由3D列印機所製造出來的手槍,或許將來有一天會派上用場。 Rust is a 3d printed gun. It may work some day. ![]() Bash是一把受詛咒的鐵鎚,對它而言什麼東西都是釘子,特別是你的拇指。 Bash is a cursed hammer, when wielded everything looks like a nail, especially your thumb. ![]() Python是一把“v2/v3”雙管式的散彈槍,子彈只會從一個管子內發射而出。 Python is the “v2/v3” double barrel shotgun, only one barrel will shoot at a time, and you never end up shooting the recommended one. Also I probably should have used a line tool to draw that. ![]() Ruby是一把鑲滿紅寶石的劍,人們使用它是因為看起來很炫。 Ruby is a ruby encrusted sword, it is usually only used because of how shiny it is. ![]() PHP是一條橡膠水管,將一頭接在汽車的排器管上,另一頭插進車窗內,然後你坐在車內發動引擎。 PHP is a hose, you usually plug one end into a car exhaust, and the other you stick in through a window and then you sit in the car and turn the engine on. ![]() Mathematica是近地軌道的衛星加農砲,可以做出很屌的事情,但不是每個人都有本錢使用它。 Mathematica is a low earth orbit projectile cannon, it could probably do amazing things if only anyone could actually afford one. ![]() C#是一座架在驢背上的雷射槍,如果把它從驢子身上卸下,好像就變得一無是處。 C# is a powerful laser rifle strapped to a donkey, when taken off the donkey the laser doesn’t seem to work as well. ![]() Prolog是一種人工智慧武器,它會遵照你的指令做事,但也會製造出終結者,回到過去殺你老媽。 Prolog is an AI weapon, you tell it what to do, which it does but then it also builds some terminators to go back in time and kill your mom. ![]() Lisp就像一把匕首,有很多樣式,只有危險的狂徒才會使用。 Lisp is a shiv which comes in many forms. Anyone who uses this is probably crazy and dangerous. ![]() 看完之後,是不是覺得非常貼切呢? -雲遊山水為知己、逍遙一生而忘齡-
搜尋相關Tags的文章:
[ 電腦神手 ] , [ 武器形容程式 ] , [ If programming languages were weapons ] ,
本篇文章發表於2014-12-27 11:53 |