AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

假如编程语言是《权力的游戏》中的角色 (上)

  • 2021-02-19
  • 本文字数:2993 字

    阅读完需:约 10 分钟

假如编程语言是《权力的游戏》中的角色 (上)

如果 C#、Python、C++、Java、SQL、Ruby,甚至 R 都是《权力的游戏》中的角色,会怎么样?


本文最初发表在 Towards Data Science 博客,经原作者 Sajid Lhessani 授权,InfoQ 中文站翻译并分享。


这篇文章不会像以往那样严肃。 让我们来分析一下,如果我们所喜爱的日常编程语言都是《权力的游戏》的角色,会怎么样?


译注:《权力的游戏》(Game of Thrones)是一部中世纪史诗奇幻题材的电视连续剧。该剧以美国作家 George R.R. Martin 的奇幻文学《冰与火之歌》(A Song of Ice and Fire) 系列为基础改编创作,由 David Benioff 和 D. B. Weiss 编剧、HBO 有线电视联播网推出。剧集第一集在 2011 年 4 月 17 日晚首次公映。该电视剧一上映即获得极高的评价。HBO 在 2011 年 4 月 19 日播出第一季第一集后,随即签下该电视剧的第二季。第二季于 2012 年 4 月 1 日正式上映,上映后反响强烈。目前 HBO 已播映五季,第六季于 2016 年 4 月播出中。


可能已经好久没有看过了,但是相信 HBO 的成功仍在我们心中。通过每一幅图的独特性和多样性,可以更好地理解当前编程语言的多样性。


让我们来复习一下,在漫漫长夜里,你可以在同事和朋友面前炫耀。

先决条件

鉴于《权力的游戏》中的角色列表比较长,本文分为两部分。第一部分将讲述四大家族。


  • 史塔克家族(Stark)

  • 坦格利安家族(Targaryen)

  • 兰尼斯特家族(Lannister)

  • 拜拉席恩家族(Baratheon)


在第二部分中,将会有更多有趣的其他角色出现,比如夜王(Night King)、瓦里斯勋爵(Lord Varis)、乔拉·莫尔蒙(Jorah Mormont)等等。


让我们从我最喜欢的史塔克家族开始。

史塔克家族

艾德·史塔克(Eddard Stark):C

绝对是第一季的主要角色之一。最早的编程语言之一。他在过去很有权势,非常受欢迎。



像 C 语言那样,艾德·史塔克(昵称奈德(Ned))在所有事情上都采用传统的方式。这种编程语言需要做很多工作,但是每个人都尊重它。


年轻的开发人员在将来会把他忘记,但他的遗产通过他的孩子们(C++、C#……)保留下来。

琼恩・雪诺(Jon Snow):C++

就像他父亲一样,他的做事方式也很传统。他是艾德·史塔克最真正的后裔,但是更加复杂更有特色



像他父亲一样,传统就是一切;如果你想了解他,你需要大量的工作和投入(坦格利安可以证明)。即便你在他身边完成了很多项目,你也永远不会觉得自己足够了解他。

艾莉亚・史塔克(Arya Stark):C#

你真的认为她会循规蹈矩和家人呆在一起吗?不!像 C#一样,艾莉亚・史塔克已经开源好多年了。



如艾莉亚·史塔克,C# 有皇室血统。在童年时期,C# 生活在一个贵族家庭中(C# 是微软的财产)。但是,就像第三季中的艾莉亚·史塔克一样,在 2016 年 C# 开源后,它已经有了很多新的面貌

珊莎・史塔克(Sansa Stark):Objective-C

根据维基百科词条:“Objective-C 是一种通用、高级、面向对象的编程语言。它扩展了标准的 ANSI C 编程语言,将 Smalltalk 式的消息传递机制加入到 ANSI C 中。”



就像第一季中的珊莎・史塔克一样,Objective-C 帮助平衡了史塔克家族和君临城(King's Landing)王国之间的关系,这要归功于她的闲谈能力和她的外交手腕。


她为 C 语言家族的编程语言添加了一些技巧,从本质上讲,这些语言是粗糙的,难以理解,敏锐而又复杂。


现在我们就来谈谈拜拉席恩家族吧,他们在过去的美好时光里是很耀眼的。你还记得他们的事吗?

拜拉席恩家族

比如在这个系列中,拜拉席恩家族很早就消失了,但他们却是过去最有权势的家族之一。

劳勃・拜拉席恩(Robert Baratheon):COBOL

在过去,COBOL 的功能非常强大,被广泛应用于企业和政府的商业、金融、行政系统。



但是像我这样的年轻开发者(我今年 28 岁)已经把他忘得一干二净。今天, COBOL 几乎已经死亡。而且, COBOL 并没有像劳勃・拜拉席恩那样创造出一种强大的世界遗产。

乔佛里・拜拉席恩(Joffrey Baratheon):VBA

他一点也不像他的父亲(劳勃・拜拉席恩),我怀疑他一定是瑟曦(Cersei)和詹姆·兰尼斯特(Jaime Lannister)的儿子。



和 VBA 一样,他在过去是如此强大,以至于每个人都必须遵守他的规则。就像乔佛里・拜拉席恩一样,VBA 也非常自私,而且与其他公司的外交关系也很糟糕。


每个 VBA 用户都知道,你不可能拥有像 Python 一样数量的库,比如拥有 TensorFlow、GoogleCoLab、 MachineLearning Libraries, 以及 Kaggle 或 Stanford University 等不同的 API。在外交上,VBA 和乔佛里·拜拉席恩是邪恶的,这使得他们都死了。


总之,大家都恨他,没人后悔杀了他。


谢天谢地,他现在已经死了。


现在,让我们点燃火把,去南方见坦格利安家族吧。

坦格利安家族

丹妮莉丝・坦格利安(Daenerys Targaryen):JavaScript

她值得拥有一个完整的篇章,挑战与挫折成就了她的过去。



一开始被低估了,但如今很强大,主要是因为她有 3 个库(Angular、React 和 Vue.js)相伴。


如丹妮莉丝·坦格利安,当 JavaScript 刚刚问世的时候,没人会把它当真,很久以来,人们一直认为它仅仅是一种前端语言。就连谷歌都试图通过发布 Kotlin 来消灭早期的 Java。多么低估了 JavaScript 的价值


现在, JavaScript 和龙一样火起来了,广泛地用于服务器端开发。


我不想多谈坦格利安家族,因为丹妮莉丝・坦格利安代表了该家族的大多数人。让我们回到君临城,去见见兰尼斯特家族。

兰尼斯特家族

正如兰尼斯特家族一样,编程语言丛林中出现了各种各样有特色的编程语言。


“兰尼斯特的人总是会还债的”

— 兰尼斯特家族

提利昂・兰尼斯特(Tyrion Lannister):Python

Python 就像系列中的提利昂・兰尼斯特(译注:是个侏儒)一样,因为它的短小而在早期被人憎恨。但是随着时间的流逝, Python,如提利昂・兰尼斯特,赢得了粉丝和遗产。



和侄子乔佛里国王不同,他凭借自己的外交才能,成为一位重要人物,到了人人向他请教的地步。根据维基百科条目,Python 今天拥有 13.7 万个库。拥有这种外交技巧,你将永远不会死去。


此外,如兰尼斯特家族, Python 是专为金融用户定制的(我每天都在工作中用它来开发我的模型,算法,甚至交易机器人)。这也是为什么提利昂・兰尼斯特才会成为国王的手下,并在这么多年来一直掌管君临城的财政大权。


就我自己的经历而言,比如第一季的提利昂・兰尼斯特,我在早年就非常讨厌 Python(当时作为一名博士生,我开始用 R 编程)。但是我今天完全沉迷其中,每天都在向他请教。

瑟曦・兰尼斯特(Tyrion Lannister):PHP

无法预料,又无情,你想多恨就能多恨,你必须承认瑟曦·兰尼斯特 /PHP 才是强大的网络女王,不好意思……维斯特洛(Westeros)几乎不可能毁灭,但是让我们看看接下来的几季(如果他们改变主意,选择制作更多的剧集,十指交叉)。



不管你有什么经验,所有的 PHP 开发人员都会认为 PHP 总是混乱不堪。

詹姆・兰尼斯特(Jaime Lannister):Kotlin

Kotlin 就像他的兄弟姊妹一样,有皇室血统。由谷歌工程师开发并派去杀死 Java,Kotlin 和詹姆・兰尼斯特依然可爱又迷人。



Kotlin 的直觉和简洁明了使你可以单手编写代码。


在第一部分中,詹姆・兰尼斯特是最后一个代表人物。


在第二部分,我们将对《权利的游戏》中的其他角色进行预测。现在,R、SQL、Java、Go、Perl、Swift、HTML 和其他语言呢?

作者介绍:


Sajid Lhessani,数据科学家,供职于银行和资本市场。


原文链接:


https://towardsdatascience.com/what-if-programming-languages-were-game-of-thrones-characters-as-a-data-scientist-c3a9ae523273


2021-02-19 15:058441
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 570.7 次阅读, 收获喜欢 1979 次。

关注

评论 1 条评论

发布
用户头像
kotlin是jetbrains的
2021-03-03 14:22
回复
没有更多了
发现更多内容

文心一言 VS 讯飞星火 VS chatgpt (121)-- 算法导论10.4 2题

福大大架构师每日一题

福大大架构师每日一题

服务器常见问题排查(一)——CPU占用高、上下文频繁切换、频繁GC

遥遥知识库

后端 服务器 性能调优 问题定位 线上环境问题

10月《中国数据库行业分析报告》已发布,深度剖析甲骨文大会Oracle技术新趋势

墨天轮

数据库 oracle postgresql opengauss 国产数据库

谷歌优化没头绪,关注这两个重要指标!

九凌网络

如何查询外贸网站是否被Google收录?

九凌网络

专家观点∣数智化招聘如何打破冶金企业人才困境

用友BIP

人才 数智化招聘

北控水务集团:通过财务共享打造高效智能的集团决策与管控中心

用友BIP

财务共享

「智造」第2期:智能制造应用下工业互联网平台的业务价值

用友BIP

智能制造

DeepSpeed: 大模型训练框架 | 京东云技术团队

京东科技开发者

人工智能 大模型 DeepSpeed 企业号10月PK榜

九凌网络分享做谷歌seo优化,技术主要在做什么?

九凌网络

一文详解多模态大模型发展及高频因子计算加速GPU算力 | 英伟达显卡被限,华为如何力挽狂澜?

GPU算力

NFTScan 获 Optimism 基金会 Cycle 14 Grant 支持 35,000 枚 OP !

NFT Research

NFT\ NFTScan

mac电脑智能视频画质修复软件 Topaz Video AI最新激活版

胖墩儿不胖y

Mac软件 视频修复工具

掌握Nginx的高级用法,构建高性能Web应用

树上有只程序猿

nginx

外贸网站收录的概念与网站不收录原因

九凌网络

Generative AI 新世界 | Falcon 40B 开源大模型的部署方式分析

亚马逊云科技 (Amazon Web Services)

Python 机器学习 容器 ;开源 生成式人工智能

语音识别技术在在线教育领域的应用与挑战

数据堂

谷歌SEO的含义:如何实现SEO策略和技巧?

九凌网络

语音识别技术在智能家居领域的应用与前景

数据堂

产品经理如何快速提升工作效率?这10款工具助你一臂之力!

彭宏豪95

产品经理 产品管理 在线白板 办公软件 在线协作

Java爬虫实战:API商品数据接口调用

Noah

百度Comate代码助手全新上线SaaS服务,适配百种开发语言,编码效率10倍提升!

新消费日报

语音识别技术在安全领域的应用与挑战

数据堂

HarmonyOS音频通话开发指导

HarmonyOS开发者

HarmonyOS

假如编程语言是《权力的游戏》中的角色 (上)_语言 & 开发_Sajid Lhessani_InfoQ精选文章