英文原文:If programming languages were “Game of Thrones” characters
翻译:公众号turingbooks

Java——龙妈

理由:Java是使用程度最为广泛、同时也是目前使用人数最多的编程语言,这一点,跟龙妈目前的处境还不太吻合(毕竟龙妈属于从边境慢慢渗入权力中心君临的)。不过,鉴于龙妈的真命天女身份,同时身边聚集了越来越多的力量,更为重要的一点——用Java写的项目,在你了解到核心部分之前,可能先要阅读很长很长的非核心代码…而任何人在跟龙妈交手之前,先要了解她的N种头衔(见下),真是一次打赢,终身炫功啊!

图0:如果编程语言也来玩儿《权力的游戏》

龙妈(Daenerys Targaryen,丹尼莉丝·坦格利安)

坦格利安龙族风暴降生、不焚者、弥林女王、安达尔人和先民的女王、草原上的卡丽熙、破镣者,龙之母(这一串儿当然是抄的了,根本记不住…)龙妈女主光环加身,前六季下来,一路开外挂,不光有三条神龙护体,还有大军跟随;当然更重要地,还有好几位智商超群的仰慕者辅佐,就连掐架失手杀爹的小恶魔也投奔龙妈了…

C语言——泰温

理由:C语言容易编译,贴近底层,多年占据编程语言排行榜前列,虽然近期份额有一定数量下降…凯岩城领主泰温虽然已经领便当了,但是他是少数几位对君临整体情况、不同家族的人物背景及未来趋势有深入洞察力的老前辈。

图1:如果编程语言也来玩儿《权力的游戏》

Tywin Lannister(泰温·兰尼斯特)

凯岩城公爵、西境守护,兰尼斯特狮族掌门人,詹姆、瑟曦和提利昂之父。手握重权、心思缜密、行事老辣,具有极高的军事和政治才能。被自己嫌弃的侏儒儿子提利昂在父子冲突中失手弄死……如若没有,在权力的游戏中,老前辈的筹码很高啊。

C++——色后

理由:C++是功能更为强大的C语言,且直接提供面向对象编程和泛型编程的特性。瑟曦虽然不如老爹泰温那样老谋深算,但是傲娇任性、野心勃勃,处处效仿老爹…第7季,色后的笔墨颇多…

图2:如果编程语言也来玩儿《权力的游戏》

色后(Cersei Lannister,瑟曦·兰尼斯特)

泰温之女,君临城鹿族劳勃国王之妻,乔弗里、弥塞菈、托曼的母亲,与孪生弟弟詹姆关系亲密,痛恨侏儒弟弟小恶魔。从小被巫魔女预言了一生,部分已应验(比如嫁给国王,母仪天下;三个孩子都会死去…)。预告片显示,第7季即将迎来色后大战龙妈的女权之争

Python——囧诺

理由:如果说Python 3是从Python 2中重生了…另外,在人工智能和机器学习领域,Python炙手可热,作为未来之星的囧诺似乎可以拿Python一比。

图3:如果编程语言也来玩儿《权力的游戏》

囧诺(Jon Snow,琼恩·雪诺)

临冬城公爵、北境守护、史塔克狼族掌门人艾德·史塔克的私生子(额,应该说是表面上的私生子,实际身份成迷,广为流传的推测是:龙族疯王长子雷加(龙妈的大哥)与艾德的妹妹绝世美女莱安娜之子)。到第6季结束,囧诺是唯一跟异鬼大规模交手的主角,也是跨越死亡复活的传奇人物。

C#——小玫瑰

理由:借鉴了Java的设计思想,好学,易用,同时兼顾运行效率。小玫瑰聪明机智、处事圆滑,能屈能伸。

图4:如果编程语言也来玩儿《权力的游戏》

小玫瑰(Margaery Tyrell ,玛格丽·提利尔)

隶属高庭金玫瑰提利尔家族,师从祖母荆棘女王(老谋深算的奥莲娜·雷德温夫人),年轻貌美,处事圆滑周到。先后嫁给鹿族的蓝礼(劳勃的弟弟)、乔弗里和托曼(劳勃和色后的两个儿子)。她对权力同样具有勃勃野心,但她的手段比较高明,进入君临不久就受到了城内百姓的爱戴。当观众爱上这个心机貌美的皇后,并期待她跟色后和大麻雀有更多较量时,她就因为色后的一锅端复仇法领便当了….

Java——小恶魔

理由:黑白两道通吃(前后端都能搞定),三观正,洞察世事,偶尔做点小坏事儿,但总体非常受欢迎。

图5:如果编程语言也来玩儿《权力的游戏》

小恶魔(Tyrion Lannister,提利昂·兰尼斯特)

泰温次子,因出生时母亲难产死亡,深受父亲厌恶。他喜欢美女、今朝有酒今朝醉,随性洒脱,虽身为侏儒,但智商超群,被迫弑父后投奔龙妈,可能会是龙妈与色后大战中夺取君临的关键智囊

PHP——三傻

理由:PHP是最好的语言…三傻是最乖的宝宝….

图6:如果编程语言也来玩儿《权力的游戏》

三傻(Sansa Stark,珊莎·史塔克)

狼族艾德·史塔克的大女儿,先后因为政治联姻和宫斗牺牲品嫁给君临国王“乔大帝”(劳勃死后继位)、小恶魔、小剥皮,又被小指头觊觎。在前几季里是让观众恨铁不成钢的傻白甜(外号三傻为英文谐音,同时表达了中国观众为她智商捉急的情绪)。但是,经历一系列命运的捉弄之后,三傻在第6季开始长心了,希望第7季能给观众惊喜或惊吓

Go语言——Bran Stark

理由:两者同出身名门,年轻,潜力无限,兼备特殊技能(并发高性能)…

图7:如果编程语言也来玩儿《权力的游戏》

布兰(Brandon Stark,布兰登·史塔克)

狼族艾德·史塔克次子,理性聪明,因喜攀爬城墙撞见色后和詹姆的关系,被詹姆推下城墙失去双腿。狼灵,具备特殊技能,可短时间控制其他动物的意识。临冬城被攻占后,远离权力纷争,带几位随从寻找三眼乌鸦,对抗异鬼。

Swift——二丫

理由:机敏好学,稳扎稳打逐步完善自身。Swift代码少性能优,二丫话少行动快…

图8:如果编程语言也来玩儿《权力的游戏》

二丫 (Arya Stark,艾丽娅·史塔克)

狼族艾德·史塔克次女,从小是个假小子,随身佩戴一枚绣花针型利剑“缝衣针”,性格倔强,出手利落。二丫(艾丽娅谐音,同时是家里的二女儿)亲眼目睹父亲艾德被“乔大帝”处死,之后独身一人流亡在外,复仇的信念支撑她顽强地生长,并习得绝技。预计第7季二丫将快速出手解决掉更多仇人。

SQL——小指头

理由:SQL是其他关系型数据库的基础,是后台必备技能。而小指头隐藏在幕后,精于计算,事事都跟他有牵扯。

图9:如果编程语言也来玩儿《权力的游戏》

小指头(Petyr Baelish,培提尔·贝里席)

君临前御前财政大臣,《权力的游戏》中各种战争的直接和间接引发者,藏于幕后,精于计算,阴险狡诈,纵横捭阖。

Objective-C——弑君者

理由:OC是一种通用、高级、面向对象的编程语言。詹姆作为名门望族之后,气质出众,但他拥有其他角色不具备的凡人之痛,错爱、忠孝难两全…

图10:如果编程语言也来玩儿《权力的游戏》

弑君者(Jaime Lannister,詹姆·兰尼斯特)

狮族泰温长子,色后孪生弟弟,痴爱色后。高大英俊美男、武艺超群,表面上冷酷无情,实际是一位具有骑士精神的男士。在断臂之前更英勇无双,断臂之后虽然失去了武力优势,但是开始从多维度思考问题。最让人唏嘘的是,一路走来,我们越来越能体会詹姆是一位悲情的角色,不出意外,巫魔女关于色后的预言会在詹姆的参与下画上句号。

Ruby——红袍女

理由:梅姨有红宝石,还有巫术和预言能力…..Ruby虽然入门难度略高,但是一旦搞定,用Ruby on Rails框架很快就可以搭建一个复杂的网站。

图11:如果编程语言也来玩儿《权力的游戏》

红袍女(Melisandre,梅丽珊卓)

梅丽珊卓,光之王拉赫洛的女祭司,据说已经几百岁,但是外表貌美。她的有一条红宝石项链,可以协助施展巫术。她能通过火焰看到未来的部分景象或者暗示(但需要解读,所以有可能出现错误),刚开始为鹿族劳勃国王的另一个弟弟史坦尼斯服务(她误认为史坦尼斯是曾经打败异鬼的亚梭尔·亚亥重生)。到第六季为止,梅丽珊卓最大的功劳是复活囧诺

X——A·B

理由:更过编程语言与《权力的游戏》角色对应等你续写!……或者如果你不同意以上说法,让你当导演,你会将哪种编程语言安排给哪个角色呢?

以下为读者续写,期待更多精彩续写。

@冰糖葫芦娃

R语言——荆棘女王

理由:R是一套完整的数据处理、计算和制图软件系统。荆棘女王在计算处理家族与国家之间利益的权衡利弊可谓是老谋深算,和R一样是一个不可小觑的存在。R作为一种统计分析软件,是集统计分析与图形显示于一体的。它可以运行于UNIX、Windows和Macintosh的操作系统上,而且嵌入了一个非常方便实用的帮助系统。荆棘女王为了谋取更大利益辗转于君临、多恩、高庭,可谓是不让须眉的女中人杰!

图12:如果编程语言也来玩儿《权力的游戏》

荆棘女王(Olenna Redwyne,奥莲娜·雷德温)

荆棘女王,小玫瑰玛格丽·提利尔、维拉斯·提利尔的祖母,梅斯·提利尔公爵的母亲,已故高庭公爵罗斯·提利尔的遗孀。曾设计让三傻嫁给维拉斯·提利尔,并阻止过色后与维拉斯的婚约。而据“小指头”与她在妓院的对话,不难猜出她才是谋害色后儿子乔佛里·拜拉席恩的真凶。在第六季小玫瑰的劝说下离开君临好运地躲过了色后的一锅端复仇,第七季肯定要和色后互相撕逼了,期待ing……

@叶糖糖

Scala——莫尔蒙

理由:Scala就是龙母(Java )的乔拉·莫尔蒙骑士。 Scala 拥有面向对象和函数式的特性,运行在JVM上,兼容 Java 程序。代码最终还是编译成 Java 字节码文件,乔拉对丹妮莉丝的爱可谓爱到极致,对女王不离不弃。只要女王开心,他做什么都愿意。最后一次离开,女王说:“等将来一统天下登上铁王座时,我需要你站在我身边。” 乔拉为爱而已战,遵从内心的选择。是不是Scala跟Java 也是这样暧昧?������

图13:如果编程语言也来玩儿《权力的游戏》

@Rekii

汇编语言——伊蒙学士

理由:他是整部剧中最年长的人,也是所有人物中最神秘,心智最高的。他说话轻柔,但富有价值,而且受人尊敬。他是真正的真龙血脉,用一生守护着维斯特洛大陆,他的守望至死不休~ 现在的很多内核和驱动的关键代码还是用汇编写的,汇编就像这些守夜人一样,守卫着软硬件的界线。

图14:如果编程语言也来玩儿《权力的游戏》

@IRemember

C语言——八爪蜘蛛

理由:瓦里斯(Varys)这个外号八爪蜘蛛的家伙,作为四朝元老,在疯王伊利斯、罗伯特、乔弗里和托曼手下都平安无事,在泰温,艾林、奈德、提利昂几位国王之手当政期间都稳坐御前会议。也是如此,他很有用,使得他这么长时间都一直相安无事。我觉得C语言也是如此啊!这么长时间也是经久不衰都N朝元老了,很有用很神秘,和瓦里斯简直是很像啊[机智]

图15:如果编程语言也来玩儿《权力的游戏》

更多读者精彩续写和留言

Kotlin,熊岛女爵莱安娜莫·尔蒙。Kotlin for Adroid,莫尔蒙 for 囧,莫尔蒙家大小姐说了,不在乎囧是不是个私生子,他身体里流着艾德·史塔克的血。Kotlin身体里流着Java的血,生而就是为了Android而存在的。 ——@贾洛

熊岛女主莱安娜,年纪虽幼,气势如虹,征服了无数观众的心,辅佐雪诺登上北境之王。正如kotlin,出身豪门,助力安卓。——@独自等待

如果龙妈Daenerys Targaryen是Java的话,黑龙Drogon、青龙Rhaegal、白龙Viserion是不是就是Spring、SpringMVC和Mybatis呀?——@东风玖哥

C语言被Java干掉了,C#被C++干掉了,C++即将被Objective-C或者Swift干掉,SQL即将被PHP或者Python干掉。Java和Python谁将登上铁王座呢,拭目以待![捂脸][捂脸] ——@smisole

Rust能担当什么角色呀? JS + Rust的组合也是前后端通吃的。 Rust前端是WASM或ASM.js,后端也能够是WASM/ASM.js,或基于N-API的Node.js本地扩展,或直接使用Rocket框架写web server。——@张浩予

以上图片均来自《权力的游戏》剧照。

余下全文(1/3)
分享这篇文章:

请关注我们:

发表评论

电子邮件地址不会被公开。 必填项已用*标注