本文来自微信公众号:BitTiger(ID:bit_tiger),作者:Dr. Michael J. Garbade,文章为翻译作品。
JavaScript和Python是两门非常有影响力的编程语言,二者都是我们在打造跨平台应用时会用到的主流语言。在过去的这些年中,尽管JavaScript始终占据着最具主导性的地位,但Python近来飞速飙升的热度似乎已经令其具备了与JavaScript相抗衡的能力。
Melight是一名拥有十年软件开发经历的程序员,如今的他正开始向人们传授自己的经验及技术。对于JavaScript与Python的“c位之争”,Melight也有自己的看法:“从近来的科技发展趋势看来,JavaScript和Python目前在人气上应该是处于并驾齐驱的状态,但后者在将来应当会赢得更多程序员的喜爱。”
那么,Python在未来五年内是否真的会超过JavaScript呢?在本篇文章中,我们会通过数据与模型为大家进行分析。但在正文开始之前我也需要强调一下,本文的主旨并非在于比较JavaScript和Python哪个是最好的编程语言。这二者有完全不同的应用场景,因而也必然是不可互相替代的。
JavaScript的主导性地位
JavaScript最早发布于1995年,是一门用于增加网站交互性的脚本语言。这门语言还拥有许多进阶的版本,比如用来给应用服务端增加额外功能的Node.js就是其中一个。
据估计,有94.9%的网站使用的语言都是JavaScript。那么它究竟为什么如此热门呢?目前看来,应该有以下三个主要原因:
首先,JavaScript既可以在客户端使用,也可以在服务端使用。有了这样“双面全能”的工具,程序员就完全可以抛弃掉PHP这类只能用在服务端的语言了。
其次,JavaScript还是一门能实现跨平台的编程语言。举例来说,由Facebook开源的JavaScript框架React Native,就可以帮助我们开发出在桌面及手机都可使用的应用。
最后,JavaScript还拥有一批热忱的“拥护者”。正是由于这批JavaScript爱好者的积极使用及与不断呼吁,这门动态语言才能够拥有今日的地位。
根据IT技术问答网站Stack Overflow给出的2018年开发者调查报告,JavaScript目前仍是最常用的编程语言,这也是其蝉联榜首的第六个年头了。其他各门语言具体的受欢迎程度也都可以在下面这张图表中看到:
由上图可知,JavaScript的确是Stack Overflow用户在2018年最偏爱的语言,其得票率达到了69.8%。与此同时,只有38.8%的Stack Overflow用户表示自己最常用的语言为Python。
在代码分享网站GitHub的用户群体中,JavaScript也同样获得了最高的支持率。根据GitHub于2017年底发布的一项报告显示,该网站的大多数用户都是用JavaScript来操作数据库的。
在下面这张图表中,我们可以看到在GitHub上各项语言对应的pull request数量:
如上图所示,大多数的GitHub用户都更倾向于在pull request中使用JavaScript。但与Stack Overflow不同的是,Python在GitHub上已经成为了编程语言排行榜的第二名,这也很可能预示着Python将在不远的将来取代JavaScript的位置。
Python急剧飙升的热度
Python最早发布于1991年,因此资历比JavaScript还要大上一些。尽管如此,这门强大的语言似乎直到近年才开始火热起来。作为一门具有超高通用性的高级语言,Python在各个领域都得到了广泛的应用,包括网页应用开发、数据分析及机器学习算法的建立等。
Python惊人的增长速度同样也可归结到三个主要原因上:
其一,Python简单易用的语法使其受到了大量用户的推崇。Python非常强调代码的可读性及间接性,也因而成为了许多开发新手偏好的选择。
其二,Python具有可靠性高、效率高的优点,这就为其赢得了许多人工智能专家的欢心。如今,随着机器学习及数据科学应用的不断增多,Python自然成为了备受相关领域专业人士喜爱的选择。此外,众多Python库的存在也使得各领域的科技工作得到了进一步的简化。
其三,Python和JavaScript一样,也拥有自己的一批忠实用户,正是他们的支持带来了Python的快速成长。在Python发布以来的二十余载中,Python热爱者们编写了大量的语言指南及出版读物。无论是新手还是“老炮”,都能够由此非常便捷地获取外部经验。
在下图中,我们可以看到各个语言在2018年9月的TIOBE编程社区指数。TIOBE是根据搜索引擎的检索结果来评估编程语言热门程度的一个指数。由下图可见,Python在今年9月史无前例地取得了最受欢迎语言榜第三名的好成绩。
由于Python在各科技领域中的应用不断增长,Stack Overflow还在报告中将Python誉为“增长最快的主流编程语言”。在下面这张来自Stack Overflow的图表中,我们可以看到2012至2018年Python相比其他语言在高收入国家的增长情况。
由上图可见,Python在2017年6月首次超过JavaScript,成为了在Stack Overflow上相关提问浏览量最高的一门语言。陡然上升的曲线亦彰显出了其增长之快速——在2012年,该平台用户对Python的兴趣还比较低,但其当前的浏览量已经成长为当时的2.5倍了。
在上述数据的基础上,Stack Overflow还搭建了一个预测主流编程语言未来两年流量的模型,其结论在图标上表示如下:
根据这份预测结果,2020年的Python将以惊人的增速超过JavaScript成为热度最高的语言。
除此之外,Stack Overflow还比较了各项主流编程语言在2017年相较上年的流量增长率,其结果如下:
由上面的这张趋势图可知,Python在2017年实现了27%的流量年增长率,这再次映证了其成长之迅速。形成鲜明对比的是,JavaScript在这两年中的增长却几乎为零。
总结
尽管JavaScript多年以来都被誉为编程界的“通用语言”,然而根据其目前的超高增长数据看来,Python很可能在将来夺走这一称号。
无论如何最重要的是,这些软件开发中的变化趋势都在指引着我们去寻找更利于我们未来发展的编程语言。