Python是不是被严重高估了?网友:呵呵
source link: http://developer.51cto.com/art/202009/627277.htm
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
开篇
python是一种代表简单主义思想的语言。代码规范简洁、关键字相对较少、说明文档很简单,容易上手,应用便捷。它能够把用其他语言制作的各种模块很轻松地联结在一起,常被昵称为“胶水语言”。
数据
在最新的TIOBE 编程语言排行榜上9 月更新已公布,排名前十的分别是:C,java,python,c++,c#,Visual Basic, javascript ,PHP,R,SQL。
TIOBE 编程社区指数(The TIOBE Programming Community index)是编程语言流行度的指标,该榜单每月更新一次,指数基于全球技术工程师、课程和第三方供应商的数量。包括流行的搜索引擎,如谷歌、必应、雅虎、维基百科、亚马逊、YouTube 和百度都用于指数计算。具体的计算方式见这里:https://www.tiobe.com/tiobe-index/programming-languages-definition/。以下是前20名:
结论先行
以Python常年稳坐前5的实力,瞬间崩盘的可能性不大。所以“严重高估”是不可能的,只能谈是高估、低估、还是严重低估吧。
小编认为,目前仍然处于低估状态,未来有机会与前二争雄。
易学易用
Python在易学易用上,有着先天的优势。如果未来,编程成为每个人都必须掌握的一项技能,那么必然不会是C/C++、Java这些,它们都太复杂。而Python,是一个首选项。
Python作为一门“胶水语言”。可以应用于Web和Internet开发、科学计算和统计、人工智能、桌面界面开发、软件开发、后端开发等多个领域,Python在设计上坚持了清晰划一的风格,这使得Python成为一门易读、易维护,并且被大量用户所欢迎的、用途广泛的语言。相比其他编程语言来说,Python的学习难度还是相对低一些的。这边小编最近刚新创建了一个关于Python学习的群:1029190475,希望能够有更多喜欢这门语言的小伙伴一起能够来讨论学习,也希望有大牛可以来多多指教哦!
Python的语法,一直遵循着一个简洁的原则:一个功能只有一种好的方式实现。而且语法与英语更接近,比如“与或非”用的是“and、or、not”,而非“&&、||、!”。此外,还有动态语言的优势,写完跑跑就能用肉眼快速验证结果,对新手更友好。这方面,最大的竞争对手可能就是Scratch,但那毕竟不是严肃认真的编程语言。
易学易用,不是Python独有的,可能所有动态语言、包括Golang这种编译快速、语法简洁的静态语言,都具备这个特征。但是,配合用途广泛的特点后,就变得强大起来。除了前端和移动端,Python什么都能干,这对不知道学什么的小白有致命的吸引力。
反过来说,也正是这个特点,使得Python可以在数据分析师、AI研究者等非编程专业人士那里流行,是Python站稳AI的关键。在编程作为一种日益重要的生产技能向更多领域扩展时,相信会有越来越多非编程专业人士选用Python。
站稳AI,扩展生态
Python的出现,是为了在某些应用场景取代Shell,实现更简单可靠的自动化。但是随着生态的扩展,它开始涉足Web后端、科学计算、数据分析、人工智能等领域。尤其是人工智能,莫名其妙地 站稳了脚跟,一定程度上成为了发论文的标准。
在过去,Python虽然是Web后端、科学计算、数据分析的选择之一,但分别被Java、Matlab、R 所压制。尤其是Web后端方面,百花齐放、百家争鸣,上有Java一超压众强,与同类竞争对手 PHP、Ruby之间也互有胜负,后面又来了Golang虎视眈眈,眼见都快不行了。很长时间内, Python都是程序员的胶水语言,负责粘合各语言项目,或者做一些打杂类的自动化,一度和Perl争雄。典型的什么都会,什么都不行。
但是从站稳AI后,情况发生了根本性变化。AI不仅是模型,还催生了数据、训练、应用等一系列相 关的场景。这极大地加强了Python在Web后端的占比,成为AI应用的首选语言。AI在应用上还没完 全落地,只要它不是泡沫,在落地时将极大地推高Python的份额。
开发社区的稳定性
实际上,如果Python不是在2005年开始2、3分裂,这15年的表现不会这么差。但是从2020年开 始,PSF正式放弃对2.x的支持,Python全面走向3.x时代。是2还是3、要不要兼容2和3、一个第三 方法是否兼容2和3……Python开发者再也不需要纠结于这些愚蠢的问题了。
Python之父Guido的退休,虽然反应了一些问题,但Python的开发仍然持续进行,核心成员新陈 代谢不见明显问题,意味着未来至少十年的平稳发展。
C语言目前有C90、C99和C11三个标准(版本),最流行的仍然是C99。这种十年磨一剑的精神, 令相关从业人员既安心又敬佩。(十年学一次,一次用十年。)虽然放弃了与时俱进,但是作为底 层语言,反而显得可靠。
只要Python不再犯错,出现3.x与4.x自我竞争的场面,就不会崩盘。
Python的未来走势
以20年为尺度来看,Java呈现缓慢下降趋势。2000~2008年,被动态语言蚕食,还好移动端输血 一波。2010年开始,Scala、Groovy、Kotlin等JVM系语言出现,嗷嗷待哺,和Java争食。 Google被Oracle敲诈天价罚单,于是扶持Kotlin登顶Android。REST、RPC、Docker、微服务的兴起,导致后端编程语言的选择更加自由,Java、乃至JVM系在后端份额,已经有所松动,Golang虎视眈眈。Java前二的位子,可能会保不住,届时Python就可顶上。
PHP、Ruby等动态语言,因自身原因而衰落。让出的份额都会被Golang、Python所接管。 JavaScript作为前端的王者,虽然开始拓展后端、桌面、移动,但暂时仍然徘徊在青铜与黄金之 间。如果世界上最后只剩下一种动态语言,那一定是JavaScript。它可能是Python未来的最大威 胁,但暂时还没有直接影响。
数据分析的盘子在变大,因此R语言强势升起,Python也未落后。随着数据分析与AI的靠近, Python的竞争优势只会增强,不会减弱。
随着国内部分高校被禁用Matlab,这个商业软件的统治地位将被撼动。国内一二本高校,归根结底 都是一家的,公立大学全部属于国家,牵一发而动全身。多年之后,其开源替代、或国产版替代, 可能将其彻底打出中国市场。Python的numpy、scipy、sympy这套,虽然集成度不如Matlab,第 三方库生态也没法比,但在大环境下,会有比之前更好的发展。从国际交流的角度考虑,开源替代 由于国产版替代,因此Python在中国的科学计算,有登顶的可能,进而影响国际。
只有顺应时代发展的编程语言,才会一直流行下去,这也是我们现在看到的情况:"全民学Python"。
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK