JavaScript和Python是现在最具影响力的两种编程语言,可用于构建各种应用程序。其中,JavaScript多年来一直是全球主流编程语言,深受开发者欢迎;而借着机器学习的东风,Python近几年增长迅猛,大有赶超势头。
面对这种局面,不少人都对两种语言的未来充满好奇,而资深开发者Melight的话可以代表其中的一种观点:“随着技术领域不断迎来新发展,我们可能会看到JavaScript与Python在流行度上不相伯仲——以及后者也许更能赢得大多数开发者的心。”
那么,在未来五年内,Python的受欢迎程度真的能超越JavaScript吗?
注:本文只比较流行度,不会在JavaScript和Python之间选出“最佳编程语言”,它们的用处截然不同,也不能完全互相替代。
广受欢迎的JavaScript
JavaScript最初于1995年发布,它是一种脚本编程语言,主要用于为网页添加交互性功能。现在还有一些基于它的高级版本,如Node.js,可用于在应用程序的后端添加额外功能。
事实上,在所有网站中,我们可以相信有94.9%用到了JavaScript。下面是JavaScript之所以流行的三个主要原因:
JavaScript既可以在后端使用,也可以在前端使用,且容易实现。
JavaScript是一种跨平台的编程语言,比如通过Facebook的React Native框架,开发人员可以用JavaScript构建在桌面和移动平台上部署的应用程序。
庞大的JavaScript爱好者社区。
根据Stack Overflow的2018年开发者调查结果,JavaScript是现在最常用的编程语言。下面是Stack Overflow的一幅统计图,显示了各编程语言的流行度:
可以发现,有69.8%的受访用户表示支持JavaScript,而稳定使用Python的用户只占38.8%。事实上,JavaScript在过去六年中一直在各类调查中占据最受欢迎编程语言榜单的榜首,比如GitHub就曾发过一份报告,称JavaScript仍然是现在拥护者最多的语言。
2017年,GitHub在一份调查报告中指出,目前大多数使用代码托管网站的开发者更喜欢把JavaScript作为自己的语言,下面是其中的一张图,显示了平台上337种语言的pull request总数(前11):
![](http://file.elecfans.com/web1/M00/66/06/o4YBAFu6rNOAL5V8AAAqR4-XIUM348.png)
很明显,JavaScript在数据上占据绝对的主导地位。但报告也表示,截至2017年,Python已经取代Java成为GitHub上第二大最流行的语言,当年pull request数较上一年提升了40%,增长显著。
越来越受欢迎的Python
Python最初发布于1991年,所以它的“年龄”其实比JavaScript更大。它是一种高级通用语言,功能强大,可用于完成各种任务,包括构建Web应用程序、分析数据和创建机器学习算法。
以下是导致Python用户量猛增的三个主要原因:
语法简单易用是Python最广为人知的一个优点。它强调代码可读性和简单性,这使得它成为许多新手的首选语言。
Python的可靠性和高效为它赢得了许多AI专家的喜爱,随着当前机器学习、深度学习和数据科学应用的增加,Python已成为该领域专业人士的首选。更重要的是,它已经有了非常完备的机器学习库,这能稳固它的地位。
和JavaScript一样,Python也有一个活跃社区,用户在多年间已经创作了大量指南和博客,进一步降低了学习门槛。
根据2018年9月的TIOBE指数数据,Python首次成为第三大最受欢迎的编程语言。在20世纪90年代初,它进入榜单,然后又花了10年才首次进入TIOBE指数前10名,之后,它始终在第5名附近徘徊,最终在上月问鼎第三。
![](http://file.elecfans.com/web1/M00/66/06/o4YBAFu6rNOABuhxAABENvLxHW4589.png)
TIOBE指数是编程语言流行度的一个权威指标。它每月更新一次,评级计算基于全球技术工程师、课程、第三方供应商的数量及流行搜索引擎索引次数,如谷歌、必应、雅虎、维基百科、亚马逊、YouTube和百度。
由于Python在完成各种技术任务中的使用频率越来越高,因此Stack Overflow将其称为“增长最快的主要编程语言”。下面是一个Stack Overflow图表,显示了与高收入国家2012至2018年间,Python问题相较其他编程语言提问的增长情况:
根据上图可得,2017年6月是Python是一个特殊时间点,从这个月开始,它首次在提问量上超越JAVA和JavaScript,排名第一。而综合图中的情况看,Python的增长是6种语言中最明显的,从2012年的默默无闻,到2018年的笑傲群雄,它在短短六年内增长了2.5倍。
此外,Stack Overflow还据此构建了一个模型,用于预测未来两年内主流编程语言的流量变化情况。
令人惊讶的是,这个模型认为Python还能延续前几年的增长幅度,并在2020年相对JavaScript仍保持领先。此外,Stack Overflow还比较了2016年至2017年间主要编程语言的流量同比增长率:
![](http://file.elecfans.com/web1/M00/66/06/o4YBAFu6rNWAK5MfAABroyZG7RY997.png)
如截图所示,Python实现了27%的高年同比增长率,势头迅猛。而JavaScript这两年来在流量上的变化并不明显,称得上是陷入停滞了。
小结
虽然JavaScript多年来一直被称为互联网的“Lingua Franca(通用语)”,但Python可能会在未来几年内打破这一局面,毕竟它在数据上已经显示出了令人惊讶的增长态势。
但最终结局会如何,这还是个需要时间检验的东西。从另一方面来说,其实编程语言的流行度变化也反映了互联网的发展趋势,5年后的Web开发、软件开发必定会和5年前有所不同,现在再加上数据科学的强势切入,我们谁都无法准确预测下一个5年会是什么样。
无论如何,面对不断发展变化的行业,每个开发者要做的是不断学习新知识,让自己不要落后于时代。
原文标题:在未来五年内,Python的受欢迎程度能否超过JavaScript?
文章出处:【微信号:jqr_AI,微信公众号:论智】欢迎添加关注!文章转载请注明出处。
收藏
人收藏
扫一扫,分享给好友
复制链接分享
评论
发布评论请先 登录
相关推荐
五种Python模块介绍及用途说明
Python 标准库有超过 200 个模块,程序员可以在他们的程序中导入和使用。虽然普通程序员对其中....
马哥Linux运维 发表于 05-13 17:27 •
276次
阅读
可以节省Python执行时间的四种方式
今天我想和大家分享 4 个省时的 Python 技巧,可以节省 10~20% 的 Python 执行....
马哥Linux运维 发表于 05-13 17:01 •
207次
阅读
TensorRT的Python API的基本用法和接口解析
本章说明 Python API 的基本用法,假设您从 ONNX 模型开始。 onnx_resnet5....
星星科技指导员 发表于 05-13 15:46 •
213次
阅读
使用fsspec优化对拼花地板数据的访问
在内部,这个新的实用程序(open_parquet_file)基本上将一个传统的开放调用封装在特....
星星科技指导员 发表于 05-13 15:15 •
54次
阅读
Numpy数组的高级操作总结
NumPy 包含一个迭代器对象numpy.nditer。它是一个有效的多维迭代器对象,可以用于在数组....
数据分析与开发 发表于 05-13 12:53 •
122次
阅读
OFTest OpenFlow测试套件
./oschina_soft/oftest.zip
发表于 05-13 11:23 •
3次
阅读
Ryu开源网络操作系统
./oschina_soft/ryu.zip
发表于 05-13 10:49 •
9次
阅读
BinderHub从git repo commit构建Docker镜像
./oschina_soft/binderhub.zip
发表于 05-13 10:46 •
3次
阅读
passenger-docker Docker基础镜像提供工具
./oschina_soft/passenger-docker.zip
发表于 05-13 10:35 •
5次
阅读
安装DevEco device tool打开VS找不到主页面的解决办法
本来发个贴,后来把标题的时候看到别人发的贴的经验贴推荐了,就解决了,所以我也来分分看一下。
原因:Python环境不玩。
解决...
发表于 05-13 10:22 •
222次
阅读
Byzer低代码编程语言
./oschina_soft/byzer-lang.zip
发表于 05-13 09:58 •
3次
阅读
TyphoonAE App Engine模拟环境
./oschina_soft/typhoonae.zip
发表于 05-12 14:45 •
6次
阅读
AppScale GAE应用发布管理
./oschina_soft/appscale.zip
发表于 05-12 14:30 •
3次
阅读
使用pip安装、更新和卸载Python的第三方库
众所周知,pip 可以安装、更新、卸载 Python 的第三方库,非常方便。你们中的许多人可能已经使....
马哥Linux运维 发表于 05-12 12:13 •
288次
阅读
PLC应该从哪些方面进行开发
PLC也称可编程逻辑控制器,在各个自动化控制项目里,我们都能够见到PLC的身影。不过,从PLC的市场....
科技绿洲 发表于 05-12 10:16 •
327次
阅读
Python Magnumclient Magnum客户端库
./oschina_soft/python-magnumclient.zip
发表于 05-11 09:42 •
3次
阅读
privacyIDEA多因素认证解决方案
./oschina_soft/privacyidea.zip
发表于 05-10 14:17 •
9次
阅读
适合小白入门arduino的文档教程
适合小白入门arduino的一个文档教程PDF版,文档内有相关的代码
第一课-LED闪烁
第二课....
发表于 05-09 17:04 •
8次
阅读
RK3399Pro上的Python api与RKNN C api推理速度一样吗
看了RK3399Pro的相关文档,感觉有两套API:一套是Toolkit的Python api,另一个是RKNN C api。这个理解对吗?另外想...
发表于 05-09 15:33 •
3157次
阅读
Gixy Nginx配置分析工具
./oschina_soft/gixy.zip
发表于 05-09 10:49 •
6次
阅读
Confidant秘密管理服务
./oschina_soft/confidant.zip
发表于 05-09 10:13 •
4次
阅读
RatticWeb密码管理服务
./oschina_soft/RatticWeb.zip
发表于 05-09 10:10 •
7次
阅读
findWebshell webshell检查工具
./oschina_soft/findWebshell.zip
发表于 05-09 09:38 •
7次
阅读
androguard Android应用分析程序
./oschina_soft/androguard.zip
发表于 05-09 09:32 •
5次
阅读
Ohmu Google编程语言
./oschina_soft/ohmu.zip
发表于 05-09 09:29 •
10次
阅读
Ubuntu开发国产单片机: 系统更新后终端和软件更新器异常
系统更新后,终端和软件更新器打不开的解决方法
国产单片机入门那些事 发表于 05-09 09:26 •
228次
阅读
tckfc TrueCrypt密钥寻找工具
./oschina_soft/tckfc.zip
发表于 05-09 09:25 •
8次
阅读
ItWasAllADream PrintNightmare的Python扫描程序
ItWasAllADream.zip
发表于 05-07 11:36 •
9次
阅读
W5 SOAR安全编排与自动化响应平台
gitee-w5.zip
发表于 05-07 11:13 •
12次
阅读
摆你一度:非安装式系统安全软件
gitee-for_once.zip
发表于 05-07 10:39 •
10次
阅读
Sublist3r子域枚举工具
Sublist3r.zip
发表于 05-07 10:13 •
7次
阅读
Vxscan综合扫描工具
Vxscan.zip
发表于 05-07 10:02 •
3次
阅读
RDPassSpray Windows网络口令攻击工具
RDPassSpray.zip
发表于 05-07 09:56 •
13次
阅读
使用NVIDIA ISAAC和TAO开发AI驱动的机器人
在本例中,您使用两个环境来培训数据:一个仓库和一个小房间。接下来的步骤包括向场景中添加符合物理定....
星星科技指导员 发表于 05-07 09:47 •
197次
阅读
Ouster发布更新版Python SDK 助力用户构建机器学习应用程序
Ouster致力于为各行业的自动化变革提供领先的环境感知能力。随着覆盖的客户范围越来越广,我们希望....
科技绿洲 发表于 05-06 16:33 •
236次
阅读
log4j-finder Log4Shell漏洞扫描工具
log4j-finder.zip
发表于 05-06 11:54 •
9次
阅读
BBScan漏洞扫描器
BBScan.zip
发表于 05-06 11:03 •
5次
阅读
Osmedeus全自动侦察和漏洞扫描工具
Osmedeus.zip
发表于 05-06 11:00 •
10次
阅读
cve-search加强CVEs搜索和处理功能的工具
cve-search.zip
发表于 05-06 10:46 •
3次
阅读
dirsearch Web目录扫描工具
dirsearch.zip
发表于 05-06 10:25 •
5次
阅读
Trape虚拟身份识别
trape.zip
发表于 05-06 09:54 •
5次
阅读
“C不再是一种编程语言”
比喻虽尖锐,依据却不无道理。几乎任何程序要做任何有用或有趣的事情,它都必须在操作系统上运行。这意味着....
硬件攻城狮 发表于 05-05 14:43 •
121次
阅读
TriAquae批量部署管理工具
triaquae.zip
发表于 05-05 10:34 •
10次
阅读
tcpxm基于pylibcap的抓包工具
tcpxm.zip
发表于 05-05 10:19 •
12次
阅读
水滴摄影是如何实现的?
水滴摄影
摄影是一门通过探索和学习来灌输的艺术。数百次点击就能捕捉到一张完美的照片,摄影师脸上的满足感在眨眼之间就...
发表于 05-01 16:25 •
1047次
阅读
Sipeed M2DOCK:全志V831 开源 人工智能 神经网络 视觉 AI Python开发板
作者@Sipeed 原文链接:
发表于 04-29 15:06 •
1873次
阅读
分享几个学习python的电子书
都是偏基础的python书籍,有需要的自取
发表于 04-29 15:01 •
2965次
阅读
Python ispy终端监控工具
ispy.zip
发表于 04-29 14:13 •
20次
阅读
DFRobot最新推出行空板Python系列入门教程
近日,上海智位机器人股份有限公司(简称DFRobot)推出行空板Python系列入门教程,涵盖初识行....
话说科技 发表于 04-29 11:35 •
181次
阅读
pysunday单文件网络协议转发系统
pysunday.zip
发表于 04-29 11:29 •
8次
阅读
CrazyEye IT管理软件
CrazyEye.zip
发表于 04-29 10:52 •
11次
阅读
configman配置工具
configman.zip
发表于 04-29 10:28 •
8次
阅读
ARM Cortex-M3编程语言开发实践指南
1、ARM Cortex-M3编程语言介绍
AAPCS标准规定 :当主调函数需要传递参数(实参)时,它们使用R0‐R3。其中R0传递第...
发表于 04-29 10:04 •
4840次
阅读
Huptime零停机重启工具
huptime.zip
发表于 04-29 09:59 •
14次
阅读
tespeed测试网速的Python工具
tespeed.zip
发表于 04-29 09:46 •
12次
阅读
QConf分布式配置管理工具
QConf.zip
发表于 04-29 09:44 •
20次
阅读
RKNN Toolkit Lite的使用与安装过程
RKNN Toolkit Lite 是 RKNN Toolkit 的精简版本,为用户提供在 PC、RK3399Pro、RK1808、RK1806、V1109、R...
发表于 04-27 18:36 •
3360次
阅读
python简单的获取基金信息
最近基金非常涨跌幅度蛮大的,很多原本不投资、不理财人,也开始讨论、参与买基金了。投资基金的人都知道根据投资对象的不同,...
发表于 04-27 16:43 •
3649次
阅读
python爬虫实战:京东图片爬虫
实现目标:将京东商城手机类的商品图片全部下载到本地。
打开官网找到手机分类下的页面
然后再找到所有手机的商品页面
经...
发表于 04-25 15:21 •
238次
阅读
怎样使用python从NTC计算表中提取Hex值呢
1、从NTC计算表中提取Hex值
最近用到NTC,使用 查表法计算热敏电阻对应的温度值。
查表法第一步是用NTC 计算表将厂家...
发表于 04-24 18:12 •
1948次
阅读
|