本文由图灵教育(turingbooks)授权高可用架构发表,作者英子。
编程语言跟《权力的游戏》结合写篇文章的想法有接近2个月了,因为我猜图灵(以及高可用架构)的读者中有很多权游的死忠粉....奈何懒癌晚期,等到16号HBO开播我才动手,结果,没时间看第一集了....还好,借机把前几季的剧情又稍微复习了一下...
写这篇文章之前,我机智地搜索了一下英文,果然这个主题的文章已经有人写过了......要不翻译一下这位前辈的作品吧,毕竟写起来很费脑细胞~~~ 但是呢,我发现自己的想法跟前辈有诸多分歧。最终,这篇文章算是半拉子原创吧,部分角色安排参考了前辈的观点,不过理由不太一样。
【阅读原文】给出了 If programming languages were "Game of Thrones" characters 的网址。
WARNING:有前六季剧透,不想被剧透的请止步于此。欢迎其他小伙伴在评论区参与续写和拍砖,我只写了12种,后面加入了图灵读者的几个优秀续写,更多好玩的续写期待大家参与......
Java——龙妈
理由:Java 是使用程度最为广泛、同时也是目前使用人数最多的编程语言,这一点,跟龙妈目前的处境还不太吻合(毕竟龙妈属于从边境慢慢渗入权力中心君临的)。不过,鉴于龙妈的真命天女身份,同时身边聚集了越来越多的力量,更为重要的一点——用 Java 写的项目,在你了解到核心部分之前,可能先要阅读很长很长的非核心代码...而任何人在跟龙妈交手之前,先要了解她的N种头衔(见下),真是一次打赢,终身炫功啊!
龙妈(Daenerys Targaryen,丹尼莉丝·坦格利安)
坦格利安龙族风暴降生、不焚者、弥林女王、安达尔人和先民的女王、草原上的卡丽熙、破镣者,龙之母(这一串儿当然是抄的了,根本记不住...)龙妈女主光环加身,前六季下来,一路开外挂,不光有三条神龙护体,还有大军跟随;当然更重要地,还有好几位智商超群的仰慕者辅佐,就连掐架失手杀爹的小恶魔也投奔龙妈了...
技能修炼手册
1. Java 8实战
2. Tomcat架构解析
C语言——泰温
理由:C语言容易编译,贴近底层,多年占据编程语言排行榜前列,虽然近期份额有一定数量下降...凯岩城领主泰温虽然已经领便当了,但是他是少数几位对君临整体情况、不同家族的人物背景及未来趋势有深入洞察力的老前辈。
Tywin Lannister(泰温·兰尼斯特)
凯岩城公爵、西境守护,兰尼斯特狮族掌门人,詹姆、瑟曦和提利昂之父。手握重权、心思缜密、行事老辣,具有极高的军事和政治才能。被自己嫌弃的侏儒儿子提利昂在父子冲突中失手弄死......如若没有,在权力的游戏中,老前辈的筹码很高啊。
技能修炼手册
1. 明解C语言(入门篇,中级篇)
2. C语言程序设计:现代方法(第2版)
C++——色后
理由:C++是功能更为强大的C语言,且直接提供面向对象编程和泛型编程的特性。瑟曦虽然不如老爹泰温那样老谋深算,但是傲娇任性、野心勃勃,处处效仿老爹...第7季,色后的笔墨颇多...
色后(Cersei Lannister,瑟曦·兰尼斯特)
泰温之女,君临城鹿族劳勃国王之妻,乔弗里、弥塞菈、托曼的母亲,与孪生弟弟詹姆关系亲密,痛恨侏儒弟弟小恶魔。从小被巫魔女预言了一生,部分已应验(比如嫁给国王,母仪天下;三个孩子都会死去...)。预告片显示,第7季即将迎来色后大战龙妈的女权之争。
技能修炼手册
1. C++权威教程(第6版)
2. C++程序设计实践与技巧
Python——囧诺
理由:如果说Python 3是从Python 2中重生了...另外,在人工智能和机器学习领域,Python炙手可热,作为未来之星的囧诺似乎可以拿Python一比。
囧诺(Jon Snow,琼恩·雪诺)
临冬城公爵、北境守护、史塔克狼族掌门人艾德·史塔克的私生子(额,应该说是表面上的私生子,实际身份成迷,广为流传的推测是:龙族疯王长子雷加(龙妈的大哥)与艾德的妹妹绝世美女莱安娜之子)。到第6季结束,囧诺是唯一跟异鬼大规模交手的主角,也是跨越死亡复活的传奇人物。
技能修炼手册
1. Python编程:从入门到实践
2. 流畅的Python
C#——小玫瑰
理由:借鉴了Java的设计思想,好学,易用,同时兼顾运行效率。小玫瑰聪明机智、处事圆滑,能屈能伸。
小玫瑰(Margaery Tyrell ,玛格丽·提利尔)
隶属高庭金玫瑰提利尔家族,师从祖母荆棘女王(老谋深算的奥莲娜·雷德温夫人),年轻貌美,处事圆滑周到。先后嫁给鹿族的蓝礼(劳勃的弟弟)、乔弗里和托曼(劳勃和色后的两个儿子)。她对权力同样具有勃勃野心,但她的手段比较高明,进入君临不久就受到了城内百姓的爱戴。当观众爱上这个心机貌美的皇后,并期待她跟色后和大麻雀有更多较量时,她就因为色后的一锅端复仇法领便当了....
技能修炼手册
1. C#图解教程(第4版)
2. 深入理解C#(第3版)
Java——小恶魔
理由:黑白两道通吃(前后端都能搞定),三观正,洞察世事,偶尔做点小坏事儿,但总体非常受欢迎。
小恶魔(Tyrion Lannister,提利昂·兰尼斯特)
泰温次子,因出生时母亲难产死亡,深受父亲厌恶。他喜欢美女、今朝有酒今朝醉,随性洒脱,虽身为侏儒,但智商超群,被迫弑父后投奔龙妈,可能会是龙妈与色后大战中夺取君临的关键智囊。
技能修炼手册
1. Java DOM编程艺术(第2版)
2. Java高级程序设计(第3版)
PHP——三傻
理由:PHP是最好的语言...三傻是最乖的宝宝....
三傻(Sansa Stark,珊莎·史塔克)
狼族艾德·史塔克的大女儿,先后因为政治联姻和宫斗牺牲品嫁给君临国王“乔大帝”(劳勃死后继位)、小恶魔、小剥皮,又被小指头觊觎。在前几季里是让观众恨铁不成钢的傻白甜(外号三傻为英文谐音,同时表达了中国观众为她智商捉急的情绪)。但是,经历一系列命运的捉弄之后,三傻在第6季开始长心了,希望第7季能给观众惊喜或惊吓。
技能修炼手册
1.PHP与MySQL程序设计(第4版)
2.深入PHP:面向对象、模式与实践(第3版)
Go语言——Bran Stark
理由:两者同出身名门,年轻,潜力无限,兼备特殊技能(并发高性能)...
布兰(Brandon Stark,布兰登·史塔克)
狼族艾德·史塔克次子,理性聪明,因喜攀爬城墙撞见色后和詹姆的关系,被詹姆推下城墙失去双腿。狼灵,具备特殊技能,可短时间控制其他动物的意识。临冬城被攻占后,远离权力纷争,带几位随从寻找三眼乌鸦,对抗异鬼。
技能修炼手册
1. Go语言编程
2. Go并发编程实战(第2版)
Swift——二丫
理由:机敏好学,稳扎稳打逐步完善自身。Swift代码少性能优,二丫话少行动快...
二丫 (Arya Stark,艾丽娅·史塔克)
狼族艾德·史塔克次女,从小是个假小子,随身佩戴一枚绣花针型利剑“缝衣针”,性格倔强,出手利落。二丫(艾丽娅谐音,同时是家里的二女儿)亲眼目睹父亲艾德被“乔大帝”处死,之后独身一人流亡在外,复仇的信念支撑她顽强地生长,并习得绝技。预计第7季二丫将快速出手解决掉更多仇人。
技能修炼手册
1. 从零开始学Swift(第2版)
2. Swift编程权威指南(第2版)
SQL——小指头
理由:SQL是其他关系型数据库的基础,是后台必备技能。而小指头隐藏在幕后,精于计算,事事都跟他有牵扯。
小指头(Petyr Baelish,培提尔·贝里席)
君临前御前财政大臣,《权力的游戏》中各种战争的直接和间接引发者,藏于幕后,精于计算,阴险狡诈,纵横捭阖。
技能修炼手册
1. SQL必知必会(第4版)
2. SQL基础教程(第2版)
Objective-C——弑君者
理由:OC是一种通用、高级、面向对象的编程语言。詹姆作为名门望族之后,气质出众,但他拥有其他角色不具备的凡人之痛,错爱、忠孝难两全...
弑君者(Jaime Lannister,詹姆·兰尼斯特)
狮族泰温长子,色后孪生弟弟,痴爱色后。高大英俊美男、武艺超群,表面上冷酷无情,实际是一位具有骑士精神的男士。在断臂之前更英勇无双,断臂之后虽然失去了武力优势,但是开始从多维度思考问题。最让人唏嘘的是,一路走来,我们越来越能体会詹姆是一位悲情的角色,不出意外,巫魔女关于色后的预言会在詹姆的参与下画上句号。
技能修炼手册
1. Objective-C基础教程(第2版)
2. Objective-C高级编程:iOS与OS X多线程和内存管理
Ruby——红袍女
理由:梅姨有红宝石,还有巫术和预言能力.....Ruby虽然入门难度略高,但是一旦搞定,用Ruby on Rails框架很快就可以搭建一个复杂的网站。
红袍女(Melisandre,梅丽珊卓)
梅丽珊卓,光之王拉赫洛的女祭司,据说已经几百岁,但是外表貌美。她的有一条红宝石项链,可以协助施展巫术。她能通过火焰看到未来的部分景象或者暗示(但需要解读,所以有可能出现错误),刚开始为鹿族劳勃国王的另一个弟弟史坦尼斯服务(她误认为史坦尼斯是曾经打败异鬼的亚梭尔·亚亥重生)。到第六季为止,梅丽珊卓最大的功劳是复活囧诺。
技能修炼手册
1. Ruby基础教程(第4版)
2. Ruby on Rails 教程(原书第4版)
X——A·B
理由:更过编程语言与《权力的游戏》角色对应等你续写!......或者如果你不同意以上说法,让你当导演,你会将哪种编程语言安排给哪个角色呢?
以下为图灵读者续写,期待更多精彩续写。
图灵读者冰糖葫芦娃
R语言——荆棘女王
理由:R是一套完整的数据处理、计算和制图软件系统。荆棘女王在计算处理家族与国家之间利益的权衡利弊可谓是老谋深算,和R一样是一个不可小觑的存在。R作为一种统计分析软件,是集统计分析与图形显示于一体的。它可以运行于UNIX、Windows和Macintosh的操作系统上,而且嵌入了一个非常方便实用的帮助系统。荆棘女王为了谋取更大利益辗转于君临、多恩、高庭,可谓是不让须眉的女中人杰!
荆棘女王(Olenna Redwyne,奥莲娜·雷德温)
荆棘女王,小玫瑰玛格丽·提利尔、维拉斯·提利尔的祖母,梅斯·提利尔公爵的母亲,已故高庭公爵罗斯·提利尔的遗孀。曾设计让三傻嫁给维拉斯·提利尔,并阻止过色后与维拉斯的婚约。而据“小指头”与她在妓院的对话,不难猜出她才是谋害色后儿子乔佛里·拜拉席恩的真凶。在第六季小玫瑰的劝说下离开君临好运地躲过了色后的一锅端复仇,第七季肯定要和色后互相撕逼了,期待ing……
技能修炼手册
1.R语言实战(第2版)
2.R语言与数据分析实战
图灵读者叶糖糖
Scala——莫尔蒙
理由:Scala就是龙母(Java )的乔拉·莫尔蒙骑士。 Scala 拥有面向对象和函数式的特性,运行在JVM上,兼容 Java 程序。代码最终还是编译成 Java 字节码文件,乔拉对丹妮莉丝的爱可谓爱到极致,对女王不离不弃。只要女王开心,他做什么都愿意。最后一次离开,女王说:“等将来一统天下登上铁王座时,我需要你站在我身边。” 乔拉为爱而已战,遵从内心的选择。是不是Scala跟Java 也是这样暧昧???????
图灵读者Rekii
汇编语言——伊蒙学士
理由:他是整部剧中最年长的人,也是所有人物中最神秘,心智最高的。他说话轻柔,但富有价值,而且受人尊敬。他是真正的真龙血脉,用一生守护着维斯特洛大陆,他的守望至死不休~ 现在的很多内核和驱动的关键代码还是用汇编写的,汇编就像这些守夜人一样,守卫着软硬件的界线。
图灵读者IRemember
C语言——八爪蜘蛛
理由:瓦里斯(Varys)这个外号八爪蜘蛛的家伙,作为四朝元老,在疯王伊利斯、罗伯特、乔弗里和托曼手下都平安无事,在泰温,艾林、奈德、提利昂几位国王之手当政期间都稳坐御前会议。也是如此,他很有用,使得他这么长时间都一直相安无事。我觉得C语言也是如此啊!这么长时间也是经久不衰都N朝元老了,很有用很神秘,和瓦里斯简直是很像啊[机智]
更多读者精彩续写和留言
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。——图灵读者张浩予
对于编程语言的角色,每位读者都有自己独到的见解,欢迎高可用架构的读者留言,发表自己心中不同的角色安排。
本文图片均来自《权力的游戏》剧照。
本文作者英子,由图灵教育(微信id: turingbooks)授权高可用架构发表,技术原创及架构实践文章,欢迎通过公众号菜单「联系我们」进行投稿。