编程语言是人类控制计算机的手段,所以大多数编程语言都试图让这个过程更加强大和简单。于是,这个领域诞生了数百种编程语言,但其中有很多今天已经不再使用,有些可能在未来几年内就会过时。占有重要地位。比较编程语言是一件非常复杂的事情,所以我们创造了很多有趣的图片或者笑话来表达各种编程语言的定义。让我们以下面的图片开始这篇文章:最好的?"inline="0">下面提供的两张表总结了过去五年(2015-2019)编程语言的流行度。数据来自于2015-2019年的Stackoverflow流行度调查。为了清晰和准确的理解,我们将编程语言分为两组,第一组是2000年之前出生的,第二组是2000年之后出生的。以2000年为界是随机选择的,但是对于理解趋势非常有用“这两组编程语言。很有帮助。该表还列出了这些编程/脚本语言的起源年份和主要应用领域。第一组观察结果最好吗?”inline="0">2018年到2019年除Python外的所有语言热度都在下降。1.PythonPython是唯一一种在过去五年中流行度上升的语言。它是一种通用语言,如果您只想在2020年学习一种编程语言并希望涵盖更广泛的软件开发领域,Python可能是一个值得考虑的好主意。2.JavaJava的市场份额一直在上升,但由于谷歌支持的Kotlin在Android开发中的巨大流行,2019年有所下降。毫无疑问,Java是一个不错的选择,但它现在归甲骨文公司所有,而谷歌由于公司的商业利益冲突正在推广Kotlin。事实上,由于使用Java的大型开发人员社区、框架和遗留应用程序,许多公司仍在使用Java,并将继续使用Java。3.C/C++C和C++仍然占有大约20%的市场份额,并且由于其固有的功能和遗留系统,它们将继续占据市场份额。4.JavaScriptJavaScript的流行可以归因于流行的JavaScript库和框架(如Node.js)的增长。JavaScript是用于构建动态网站的语言,它将成为未来几年Web开发的首选语言。而且,如果我们要做网页开发,JavaScript是绝对没有办法的。5.R语言由于数据分析需求的增长和普及,R语言近年来越来越受欢迎。R语言主要由数据科学家使用,与Python这样的通用语言相比,它拥有活跃的开发人员,贡献了大量的数据科学库和模块。但如果只能二选一,相信会有更多的数据科学家向Python倾斜。6.Ruby与PHP一样,在Web开发的后端构建方面,Ruby也面临来自JavaScript甚至Python的激烈竞争。因此,对于web开发来说,JavaScript和Python会是比Ruby(Python的服务端框架Flask和Django)更好的选择,也更灵活。7.PHP2019年,PHP的热度急剧下降,这可以追溯到服务端对JavaScript和Python的接受程度。如果有人想进行服务器端Web开发,PHP仍然是一个不错的选择——有大量流行的框架,如CakePHP、Codeigniter等。否则,最好选择一种通用的编程语言。8.Objective-C在Apple迁移到Swift语言之前,Objective-C是开发Apple软件(如macOS、iOS等平台)的主要语言。因此,这种转变反映在两种语言的流行度上,Objective-C的流行度在下降,而Swift在上升。因此,如果有人想成为Apple产品的开发人员,Swift应该是首选语言。第二组观察是最好的?"inline="0">1.SwiftSwift已经取代Objective-C成为苹果相关软件和应用开发的主要语言。由于苹果支持的推动,Objective-C自诞生以来就越来越受欢迎,苹果将继续支持也可以使用它。如果有人正在寻找Apple特定的开发平台,Swift将成为一种必须了解的编程语言。然而,Swift主要是一种特定于供应商和产品的语言,在Apple生态系统之外的使用率非常低。2、GoGoogle不断维护、使用和推广Go语言。而它的初衷是为了解决一些流行语言的不足,同时融合最好的语言的特点。Go自2017年以来越来越受欢迎,在Google的支持下,它将在未来几年继续保持高速增长。Google也将Go作为新项目的主要语言,并用Go替代其他语言。这种趋势将在未来几年持续下去,所以如果你想学习一门新的编程语言,Go是值得拥有的。3.KotlinKotlin作为Android开发的Java替代品起家,并迅速“升级”。随着Android的发展、Google的支持以及简洁的语法,它是Android开发人员的一个选择,也是学习Android开发的不错选择。Kotlin将是Android开发的“最佳”解决方案。4.ScalaScala试图取代Java,但开发者似乎并不认同。它没有得到任何大公司的大量支持,而且由于Scala是一种函数式编程语言并且依赖于JVM,因此它没有获得太多的普及,虽然会有稳定的增长,但速度会很慢。而且它肯定不是适合初学者学习的语言。5.JuliaJulia旨在将C的速度与Python的易用性结合起来,但奇怪的是,Julia的受欢迎程度并没有反映在Stackoverflow调查中,而是在数据科学领域很受欢迎,从长远来看它也被认为是R的挑战者和蟒蛇。当然,Julia会继续成长,但对于工作和成长,Python或R更好。6.C#C#是Microsoft开发的一种针对.NET框架的编程语言。它的受欢迎程度在过去几年中基本保持不变,并将继续遵循类似的趋势。这是一种特定于供应商的语言,因此如果您需要在Microsoft提供的开发环境中工作,它是首选语言。最近,微软开源了.NET,所以它会看到一些上行空间,但毕竟是供应商特定的,所以不会受到太大影响。7、RustRust、Clojure等是有用户基础但不是那么流行的语言,所以流行度不会有大的提升。一图胜千言要了解顶级编程语言的增长趋势和现状,可以通过各种图表来理解。下图非常清楚地描绘了JavaScript在旧语言堆栈中远远领先于其他语言,并将继续在Web开发中占有一席之地。C和C++都与Java竞争,并且非常接近后者的位置。Python也越来越受欢迎,在过去的五年里,它是唯一一种越来越受欢迎的语言。最多?"inline="0">最佳?"inline="0">新语言越来越受欢迎,其中大部分得到微软、谷歌和苹果等IT巨头的支持。开发人员最喜欢和想学习哪种语言?"inline="0">最佳?"inline="0">从上面的表格和图表我们可以看出,在过去的五年里,喜欢Rust的人数在逐渐增加,而Swift却慢慢失去了开发者的青睐。喜欢它,Python介于两者之间。另一个独特的观察是,开发者喜爱的5种语言中有4种来自2000年后诞生的编程语言,只有Python是比较老的语言,而Kotlin最喜欢的是2017年谷歌的第一级Android开发语言开始。最多?"inline="0">从上表可以看出,开发者使用JavaScript和Python进行开发的意愿在过去几年有所增长,反映了这两种语言的流行程度。另外,Java在这方面的数据由于Kotlin作为Android开发的替代方案以及Oracle关于使用Java的政策变化,显示出急剧下降。最好吗?inline="0">最好的技术和编程语言?"inline="0">在这张图中,我们可以看到最大的集群是Web开发和JavaScript及其各种框架,第二大集群是微软技术和Python技术,这再次印证了开发者对这门语言的欢迎和喜爱.Python技术集群主要与数据科学技术相关,这些技术与Python的成长密切相关。TIOBEIndex用于对编程语言进行排名的TIOBEIndex基于搜索引擎结果。在TIOBE指数中,Java在过去二十年一直占据主导地位,而C在过去三十年一直保持着第一或第二的位置。在过去的二十年里,Python的排名增长迅速,从1999年的第24位上升到2019年的第3位。"inline="0">新语言(2000年后诞生)中,Rust上升明显,从第33位上升到第28位,Julia也从第50位上升到第39位。值得注意的是,Kotlin似乎从来没有进入前20PYPLIndexPYPLIndex的来源主要是分析一种语言在谷歌上的搜索频率,搜索次数越多说明该语言越受欢迎。原始数据来自GoogleTrends。CourtesyofAs可以看出下图,编程语言TOP3分别是Python、Java、JavaScript,C#、PHP、C/C++也位居榜首,这个趋势与Stackoverflow的语言流行度和TIOBE指数相似。inline="0">上图显示,在新的编程语言中,2000年后诞生的Kotlin、Go、Rust和Julia的排名也在上升。最多?"inline="0">JobMarketandSalary薪资取决于地理区域和产品需求,基于编程语言的薪资比较只是预测或估计薪资趋势的工具。我们根据热门调查汇总了薪资编程语言,即2018年Dice薪资调查和2018年和2019年Stackoverflow薪资调查。最佳?inline="0">从上表可以看出,Go开发在市场上是一份收入非常丰厚的工作,在2019年的Stackoverflow调查和2018年DiceSalary的高薪工作中都排名第一民意调查。原因其实很简单,因为Go是谷歌支持的语言,主要在谷歌内部使用。再加上谷歌希望推广这门语言,自然会以高薪吸引开发者。这里有一个经济学术语——价格弹性。企业对岗位的弹性需求,导致岗位薪酬不稳定。所以很明显,全球平均工资并不是选择语言的合理因素。如果有一种编程语言快要死了,但很少有遗留系统使用它,那么公司往往会提供非常高的薪水来维护这些产品,但这些职位总是非常稀少。另一方面,由于主流语言提供的工作岗位较多,平均工资自然会下降。综上所述,可以看出预测编程语言的趋势很简单,但是只选择一门语言来学习是一个非常困难的决定,这完全取决于个人的选择和他们未来的计划。
