目录

2020年需要学习的十大按需编程语言

目录

2020年需要学习的十大按需编程语言

点击上方“ 小白学视觉 ”,选择加" 星标 “或“ 置顶

重磅干货,第一时间送达 https://i-blog.csdnimg.cn/blog_migrate/8b0f9a46217f7b083281e8f394a2aba6.png

https://i-blog.csdnimg.cn/blog_migrate/1200df1d5362f58201bd470b2a9d266d.png

编程语言大约有600多种。编程语言的需求和流行程度每年都在变化。另外,新的编程语言也具有吸引人的功能。

那么,应该学习哪种编程语言?学习新的编程语言始终需要我们投入大量的时间和智力。如果是一位经验丰富的开发人员,或者已经知道几种编程语言,则可以学习一种小众的现代语言。

但是,如果打算在2020年开始编程生涯,或者想学习第一或第二种编程语言,那么最好学习一种主流的和成熟的编程语言。在这里,我将基于以下条件列出各种编程语言:

  • 在软件开发行业中已经是主流并已牢固确立。
  • 世界排名第一的著名编程语言排名网站。
  • 受欢迎程度正在增加或稳定,并且没有急剧下降。
  • 他们拥有大量的库、框架和工具支持,并且拥有庞大的社区。
  • 他们对工作市场有很高的薪水要求。

另外,我们总结了编程语言的历史背景、关键功能和主要用例。

1. Python

https://i-blog.csdnimg.cn/blog_migrate/bffcdbbc7b7b6c28d0298ece41b70dfb.png

当Guido van Rossum在1990年代开发Python作为他的副项目时,没有人认为这有一天会是最受欢迎的编程语言。考虑到所有公认的排名和行业趋势,我将Python视为整体上排名第一的编程语言。

Python尚未像Java或C / C ++那样迅速普及。而且,Python并不是一种破坏性的编程语言。但是从一开始,Python就专注于开发人员的经验,并试图降低编程的障碍,以便学校的孩子也可以编写生产级代码。

在2008年,Python进行了大修和改进,并通过引入Python 3导致了重大更改。

如今,Python无处不在,并已用于软件开发的许多领域,但丝毫没有放缓的迹象。

3个主要功能:

  • Python的USP是其语言设计。它是高效的、优雅的、简单的且功能强大的。
  • Python与C / C ++具有一流的集成,可以无缝地将CPU繁重的任务卸载到C / C ++。
  • Python具有非常活跃的社区支持。

人气:

在过去的几年中,Python的需求出现了巨大的增长,并且没有放缓的迹象。编程语言排名网站PYPL将Python排名为第一大编程语言,在2019年获得了可观的普及度:

https://i-blog.csdnimg.cn/blog_migrate/aee558ab783a38bd2754c8b726ccbfeb.png

资料来源:PYPL

而且,根据GitHub存储库的贡献,Python已超越Java,成为第二大最受欢迎的语言:

https://i-blog.csdnimg.cn/blog_migrate/68974a26dc262f525886d2d86406c672.png

资料来源:Octoverse

此外,StackOverflow开发人员调查还将Python排名为第二大最受欢迎的编程语言(第四大最受欢迎的技术):

https://i-blog.csdnimg.cn/blog_migrate/374eb329d943db64a085a55950bdbb40.png

资料来源:2019年StackOverflow开发人员调查

另一个编程语言排名网站TIOBE在去年将Python排名第三,并获得了可观的增长:

https://i-blog.csdnimg.cn/blog_migrate/547eb966431c60f1c881247a25daeabb.png

资料来源:TIOBE

根据GitHub Octoverse的说法,由于去年Python增长了50%,因此Python仍然有机会在今年的排名中进一步提高:

https://i-blog.csdnimg.cn/blog_migrate/a8bae2f23a10df9edb105b2e2882513c.png

资料来源:Octoverse

StackOverflow开发人员调查将Python列为第二受欢迎的编程语言:

https://i-blog.csdnimg.cn/blog_migrate/40c023719734820b7ffcde7fbf2cd86f.png

资料来源:2019年StackOverflow开发人员调查

大多数较旧的主流编程语言都具有稳定或下降的吸引力。不过,Python在这里是个例外,并且在最近五年中呈上升趋势,从Google趋势可以明显看出:

https://i-blog.csdnimg.cn/blog_migrate/bc1a9696f379273dfd8688e0ba43e037.png

资料来源:Google趋势

人才市场:

根据Indeed的说法,Python是美国就业市场上要求最严格的编程语言,在2020年1月发布的最高职位为74K。此外,Python以12万美元的年薪排名第三。

https://i-blog.csdnimg.cn/blog_migrate/397565cb62bbdd2d420e16ed141fc428.png

资料来源:Indeed

此外,StackOverflow开发人员调查还显示,与其他主流编程语言相比,Python开发人员的薪水较高,而经验却相对较低:

https://i-blog.csdnimg.cn/blog_migrate/f9075d12fdb19182abd9c10bdcfc2079.png

资料来源:2019年StackOverflow开发人员调查

主要用例:

  • 数据科学
  • 数据分析
  • 人工智能,深度学习
  • 企业应用
  • Web开发

2. JavaScript

https://i-blog.csdnimg.cn/blog_migrate/6a3a5584c0f6aa58acd1e88effe958f2.png

在第一次浏览器大战中,Netscape 已分配 布伦丹·艾希(Brendan Eich) 为其浏览器开发一种新的编程语言。布伦丹·艾希(Brendan Eich)仅用了10天的时间就开发出了最初的原型,剩下的就是历史了。由于语言设计欠佳且缺乏功能,软件开发人员常常在早期嘲笑JavaScript。

多年来,JavaScript已发展成为一种多范例、高级、动态编程语言。JavaScript的第一个重大突破是在2009年,当时Ryan Dahl发布了跨平台JavaScript运行时Node.js,并使JavaScript可以在服务器端运行。

JavaScript的另一项重大突破出现在2010年左右,当时Google发布了基于JavaScript的Web开发框架AngularJS。

如今,JavaScript是世界上使用最广泛的编程语言之一,几乎可以在任何地方运行:浏览器,服务器,移动设备,云,容器,微控制器。

3个主要功能:

  • JavaScript是浏览器编程中无可争议的王者。
  • 感谢Node.js,JavaScript提供了事件驱动的编程,特别适合I / O繁重的任务。
  • 在过去的几年中,JavaScript经历了大规模的现代化和大修,尤其是在2015年,2016年及以后。

人气:

JavaScript是所有平台上普遍使用和大规模采用的最高级编程语言之一。

根据GitHub存储库的贡献,Octoverse连续五年将JavaScript视为排名第一的编程语言:

https://i-blog.csdnimg.cn/blog_migrate/1e8c59f47e8306c79accb6953f317a6e.png

资料来源:Octoverse

此外,2019年StackOverflow开发人员调查将JavaScript列为最受欢迎的编程语言和技术:

https://i-blog.csdnimg.cn/blog_migrate/7b14b793f32080f9f143fe1f8c22bcd4.png

资料来源:2019年StackOverflow开发人员调查

另一个编程语言流行网站PYPL将JavaScript排名为第三大流行编程语言:

https://i-blog.csdnimg.cn/blog_migrate/ce979ca657213b985469b4baf1c1d9e2.png

资料来源:PYPL

编程语言流行网站TIOBE将JavaScript排名为第七大流行编程语言:

https://i-blog.csdnimg.cn/blog_migrate/85d44b20c7291354c7075534500f5738.png

资料来源:TIOBE

根据StackOverflow开发人员调查,JavaScript也被列为最受欢迎的11种编程语言:

https://i-blog.csdnimg.cn/blog_migrate/15b473e8ae737ad1e2d4679bfdbade8a.png

资料来源:2019年StackOverflow开发人员调查

JavaScript的趋势相对稳定,如Google趋势所示:

https://i-blog.csdnimg.cn/blog_migrate/caf0ebddfe02288b6af4f85b638fe0ab.png

资料来源:Google趋势

人才市场:

在美国就业市场上,Indeed在2020年1月发布的5.7万份Job中,将JavaScript排名为第三高要求的编程语言。JavaScript的平均年薪为11.4万美元,在薪水方面排名第四

https://i-blog.csdnimg.cn/blog_migrate/742484833fd222d24762ff6df3ea13b7.png

资料来源:Indeed

此外,StackOverflow开发人员调查显示,JavaScript开发人员的经验相对较低,可以赚取适度的薪水:

https://i-blog.csdnimg.cn/blog_migrate/356b72ca4b700a0b3d93c77ac8c749e9.png

资料来源:2019年StackOverflow开发人员调查

主要用例:

  • Web开发
  • 后端开发
  • 移动应用开发
  • 无服务器计算
  • 浏览器游戏开发

3. Java

https://i-blog.csdnimg.cn/blog_migrate/5ecd2e4f1b10408288e08ff84f66b9da.png

Java是迄今为止最具破坏性的编程语言之一。上世纪90年代,业务应用程序主要是使用C ++开发的,它非常复杂且依赖于平台。James Gosling和他在Sun的团队通过提供一种更简单的,面向对象的,解释性编程语言(也支持多线程编程),降低了开发业务应用程序的障碍。

Java通过开发Java虚拟机(JVM)实现了平台独立性,该虚拟机从开发人员那里提取了底层操作系统,并提供了第一种“ 一次编写,随处运行 ”编程语言。此外,JVM提供了生成垃圾收集,该垃圾收集管理对象生命周期。

近年来,由于高度受开发人员欢迎的现代语言以及其他语言(尤其是Python,JavaScript)的兴起,Java失去了部分市场。而且,JVM体积庞大,因此对云不太友好。甲骨文最近对JDK收取了高额的许可费,这将进一步削弱Java的受欢迎程度。

幸运的是,Java正在努力解决其缺点,并试图通过GraalVM计划使Java适用于云。另外,在OpenJDK中,可以免费使用专有的Oracle JDK。

Java仍然是企业的第一编程语言。

3个主要功能:

  • Java提供了一种功能强大,功能丰富的多范例解释型编程语言,具有适度的学习曲线和较高的开发人员生产力。
  • Java严格向后兼容,这是业务应用程序的关键要求。
  • Java的运行时JVM是软件工程的杰作,也是业界最佳的虚拟机之一。

人气:

Java发布仅五年之后,它便成为第三大最受欢迎的编程语言,并且在接下来的二十年里始终保持在前三名之列。在流行的TIOBE排名中,这是Java的长期历史:

https://i-blog.csdnimg.cn/blog_migrate/4a4e47558e40e8f5f9f317d529fbe3bc.png

资料来源:TIOBE

在最近几年中,Java的流行度有所下降,但是根据TIOBE的说法,它仍然是最流行的编程语言,如下所示:

https://i-blog.csdnimg.cn/blog_migrate/bba86677f90ad912b379f842a499a4ce.png

资料来源:TIOBE

https://i-blog.csdnimg.cn/blog_migrate/955ffc76e76a1bd66e930f03f23cf04b.png

资料来源:TIOBE

根据GitHub存储库的贡献,Java在2014–2018年期间排名第一,去年仅滑落至第三位:

https://i-blog.csdnimg.cn/blog_migrate/a79dfe5017522a0daa6005b7fac7009b.png 资料来源:Octoverse

另一个流行的编程语言排名网站PYPL将Java排名为第二大最受欢迎的编程语言:

https://i-blog.csdnimg.cn/blog_migrate/6cd490faf216283c1a032479d564b088.png

资料来源:PYPL

StackOverflow开发人员调查还将Java排名很高,并且仅被JavaScript和Python编程语言所取代:

https://i-blog.csdnimg.cn/blog_migrate/17f11eeb9246bf434fa94eaf9c8a3607.png

资料来源:2019年StackOverflow开发人员调查

根据Google的趋势,Java在过去五年中不断失去吸引力:

https://i-blog.csdnimg.cn/blog_migrate/c6cc8456b8097ec501fd2bda00b149e3.png

资料来源:Google趋势

人才市场:

根据Indeed,Java是美国第二高要求的编程语言,2020年1月发布了69 K Job。此外,Java开发人员的年薪排名第六高(10.4万美元):

https://i-blog.csdnimg.cn/blog_migrate/a3bc173f73e19cc2f8f80356dc5e3af0.png

资料来源:Indeed

根据2019年StackOverflow开发人员调查,Java经过几年的经验提供了适中的薪水:

https://i-blog.csdnimg.cn/blog_migrate/1db21c6a56cbc4f14a37e45e9e9df8e1.png

资料来源:2019年StackOverflow开发人员调查

主要用例:

  • 企业应用开发
  • Android App开发
  • 大数据
  • Web开发

4. C#

https://i-blog.csdnimg.cn/blog_migrate/8b03ac2a53594b1295e71c17ffef4839.png

在2000年,科技巨头Microsoft决定创建自己的面向对象的C语言(如C#)作为其.NET计划的一部分,并将对其进行管理(在Java等虚拟机上运行)。资深的语言设计师Anders Hejlsberg将C#设计为Microsoft 公共语言计划(CLI)平台的一部分,该平台将许多其他语言(主要是Microsoft的语言)编译成一种中间格式,该格式可在名为Common Language Runtime(CLR)的运行时上运行。

在早期,C#被批评为模仿Java。但是后来,两种语言有所不同。此外,Microsoft的C#编译器/运行时许可也不总是很清楚。尽管Microsoft当前未根据Microsoft Open Specification Project强制实施其专利,但它可能会更改。

如今,C#是一种多范式编程语言,不仅在Windows平台上广泛使用,而且在iOS / Android平台(由于Xamarin)和Linux平台上也广泛使用。

3个主要功能:

  • Anders Hejlsberg在将C#摆脱Java的阴影并赋予自己的身份方面做得非常出色。
  • 在Microsoft的支持下,已经从事该行业20年,C#拥有大型的库和框架生态系统。
  • 像Java一样,C#也与平台无关(由于CLR),并且可以在Windows,Linux和移动设备上运行。

人气:

流行语言排名网站TIOBE在2020年1月排名第5位,获得了可观的收益:

https://i-blog.csdnimg.cn/blog_migrate/12e3c24c1971fec5d904ad95851a31ca.png

资料来源:TIOBE

此外,Octoverse已将C#列为GitHub存储库贡献的第五种流行编程语言:

https://i-blog.csdnimg.cn/blog_migrate/fcd0eaf9ebb39d86628a1081628939d4.png

资料来源:Octoverse

StackOverflow开发人员调查已将C#列为第四受欢迎的语言(2019年第七受欢迎的技术):

https://i-blog.csdnimg.cn/blog_migrate/56cffe41ed87106fa8e1373a73699c23.png

资料来源:2019年StackOverflow开发人员调查

有趣的是,StackOverflow开发人员调查将C#列为最受欢迎的第十种编程语言(远高于Java):

https://i-blog.csdnimg.cn/blog_migrate/efaa5e92a2ba741aeb25537941fb1d84.png

资料来源:2019年StackOverflow开发人员调查

从Google的趋势可以明显看出,C#在过去的几年中并未被大肆宣传,如下所示:

https://i-blog.csdnimg.cn/blog_migrate/d54be647278d8fcf78855514eb496c9c.png

资料来源:Google趋势

人才市场:

实际上,确实为美国的C#开发人员发布了3万2千个职位,这使C#成为该列表中要求最严格的编程语言的第5位。C#的年薪为$ 96 K,在此列表中排名第8:

https://i-blog.csdnimg.cn/blog_migrate/beefeff8776d0adc7a4a53605eafecc5.png

资料来源:的确

关于StackOverflow开发人员的调查,就全球平均薪资而言,C#高于Java(尽管有更多经验):

https://i-blog.csdnimg.cn/blog_migrate/10761f9f903379875a8508b0de1a093d.png

资料来源:2019年StackOverflow开发人员调查

主要用例:

  • 服务器端编程
  • 应用程式开发
  • Web开发
  • 游戏开发
  • Windows平台软件

5. C

https://i-blog.csdnimg.cn/blog_migrate/2c93a17157b64fe0b90de6b7b10d0366.png

在1960年代和1970年代,CPU的每个周期和每个字节的内存都非常昂贵。贝尔实验室工程师Dennis Ritchie开发了一种过程通用编程语言,该语言在1969-1973年间直接编译为机器语言。C编程提供对内存的低级访问,并提供对底层硬件的完全控制。

多年来,C成为最常用的编程语言之一。此外,C可以说是历史上最具破坏性和影响力的编程语言,并且几乎影响了该列表中的所有其他语言。

尽管C因其偶然的复杂性,不安全的编程和缺乏功能而经常受到批评。同样,C依赖于平台,即C代码不可移植。但是,如果您想充分利用硬件,那么C / C ++或Rust是您唯一的选择。

3个主要功能:

  • 由于C提供了对内存的低级访问并编译为Machine指令,因此它是最快,最强大的编程语言之一。
  • C完全控制了底层硬件。
  • C是“语言的编程语言”之一,即许多其他编程语言(如Ruby,PHP,Python)的编译器都用C编写。

人气:

C是该列表中最古老的编程语言,并且在整个行业中占据着主导地位达47年之久。从TIOBE的长期排名历史可以明显看出,C还统治了编程语言的流行度排名,超过了其他任何语言:

https://i-blog.csdnimg.cn/blog_migrate/9d9cb521b929148c3696e87d6000e85a.png

资料来源:TIOBE

根据TIOBE排名,C在2019年获得了巨大的流行并成为第二流行的语言,:

https://i-blog.csdnimg.cn/blog_migrate/e523f036c7281db6e9344a7a6320c2cf.png

资料来源:TIOBE

https://i-blog.csdnimg.cn/blog_migrate/f5f3c2eb9e96b114b57241b0524dfa46.png

资料来源:TIOBE

根据GitHub存储库的贡献,Octoverse还将C排在第9位最受欢迎的语言中:

https://i-blog.csdnimg.cn/blog_migrate/84925182baf2af239ee6af61810af29c.png

资料来源:Octoverse

StackOverflow开发人员调查还将C排在第12位(考虑到编程语言,则排名第8位):

https://i-blog.csdnimg.cn/blog_migrate/0140199084969f1b0fcf52350734538a.png

资料来源:2019年StackOverflow开发人员调查

Google趋势在过去五年中也显示出C的相对稳定趋势。

https://i-blog.csdnimg.cn/blog_migrate/92c0d8cfd54531de4eaf7fb148e0a55e.png

资料来源:Google趋势

人才市场:

根据Indeed的说法,在美国,有28K职位供C开发人员使用,这使C成为要求最高的第六种编程语言。就薪水而言,C在Java($ 104 K)中排名第六:

https://i-blog.csdnimg.cn/blog_migrate/860208afac0620379a550f7265395da0.png

资料来源:Indeed

StackOverflow开发人员调查显示,与Java,Python等相比,C开发人员可以赚取平均工资,但需要更长的时间才能实现这一目标:

https://i-blog.csdnimg.cn/blog_migrate/986eaba0f98d8e7c6be3d4da800c3bb4.png

资料来源:2019年StackOverflow开发人员调查

主要用例:

  • 系统编程
  • 游戏开发
  • 物联网和实时系统
  • 机器学习,深度学习
  • 嵌入式系统

6. C ++

https://i-blog.csdnimg.cn/blog_migrate/ccf71278f471240f1d6d0125d155f102.png

Bjarne Stroustrup在1970年代曾与贝尔实验室的Dennis Ritchie(C的创建者)合作。受C影响很大,他首先创建了C ++作为C的扩展,并添加了面向对象的功能。随着时间的流逝,C ++已经发展成为一种多范例的通用编程语言。与C一样,C ++也提供低级内存访问,并直接编译为机器指令。

C ++还提供对硬件的完全控制,但会带来意外的复杂性,并且不提供语言级别的内存安全性和并发安全性支持。另外,C ++提供了太多的功能,并且是最复杂的编程语言之一。

由于所有这些因素及其平台依赖性,在2000年代初,C ++在企业软件开发和大数据领域中已不如Java流行。

随着GPU,容器化,云计算的兴起,C ++再次流行起来,因为它可以快速适应自身以利用硬件或生态系统的变化。

如今,C ++是业界最重要且使用最广泛的编程语言之一。

3个主要功能:

  • 像Java一样,C ++也在不断进行现代化,以适应硬件或生态系统的变化。
  • C ++还可以完全控制基础硬件,并且可以在每个平台上运行并利用各种硬件,无论是GPU,TPU,容器,云,移动设备还是微控制器。
  • C ++速度极快,并在性能关键和资源受限的系统中大量使用。

人气:

C ++是此列表中第二古老的编程语言,在TIOBE编程语言排名中排名第四:

https://i-blog.csdnimg.cn/blog_migrate/4ae0c97cfdb8a82446e93c08c7dfc375.png

资料来源:TIOBE

Octoverse在GitHub存储库贡献方面将C ++排名为第六位:

https://i-blog.csdnimg.cn/blog_migrate/6894a5e763d84c7f0d5237bd6f8a308c.png

资料来源:Octoverse

此外,2019年StackOverflow开发人员调查将C ++列为第9最受欢迎的技术(第6最受欢迎的语言):

https://i-blog.csdnimg.cn/blog_migrate/32694437e475990ba8d6383fb2dbe1aa.png

资料来源:2019年StackOverflow开发人员调查

尽管C ++面临着来自Rust或Go之类的现代编程语言的激烈竞争,但在过去五年中,它仍然引起了稳定的关注:

https://i-blog.csdnimg.cn/blog_migrate/adb510ed705e5deabcf4388b06b69837.png

人才市场:

实际上,C ++以41 K个职位发布的要求成为排名第四的最苛刻的编程语言。此外,C ++开发人员每年可赚取$ 108 K,名列第五:

https://i-blog.csdnimg.cn/blog_migrate/e29e266f5be438efb92caabb81c546a8.png

资料来源:的确

StackOverflow开发人员调查显示,尽管Java的使用经验更长,但与Java相比,C ++开发人员的薪水更高:

https://i-blog.csdnimg.cn/blog_migrate/537ab35e394743e88525b6ad3ffaac51.png 资料来源:2019年StackOverflow开发人员调查

主要用例:

  • 系统编程
  • 游戏开发
  • 物联网和实时系统
  • 机器学习,深度学习
  • 嵌入式系统,分布式系统

7. PHP

https://i-blog.csdnimg.cn/blog_migrate/5a9703c8a6146c8573e606bb980db06b.png

与Python一样,PHP是90年代由单个开发人员作为辅助项目开发的另一种编程语言。软件工程师Rasmus Lerdorf最初将PHP创建为一组用C编写的通用网关接口二进制文件,以创建动态Web应用程序。后来,更多的功能被添加到PHP产品中,并且有机地演变为成熟的编程语言。

当前,PHP是一种通用的动态编程语言,主要用于开发服务器端Web应用程序。

随着基于JavaScript的客户端Web应用程序开发的兴起,PHP失去了吸引力和流行性,并且PHP已过时。与流行的看法相反,PHP不会很快消失,尽管它的流行将逐渐减少。

3个主要功能:

  • PHP是高效的服务器端Web开发编程语言之一。
  • 由于PHP在过去35年中一直用于Web开发,因此市场上有许多成功且稳定的PHP框架。
  • 许多大型公司都在使用PHP(Facebook,Wordpress),这为其提供了出色的工具支持。

人气:

编程语言排名网站TIOBE在2020年1月将PHP排名为第八大最受欢迎的编程语言。尽管PHP的长期排名历史表明PHP已经过时了,并逐渐失去了吸引力:

https://i-blog.csdnimg.cn/blog_migrate/60e9cc5b7e959b6de1623c666cd3056d.png 资料来源:TIOBE

根据GitHub存储库的贡献,Octoverse将PHP排名为第四大最受欢迎的编程语言:

https://i-blog.csdnimg.cn/blog_migrate/7adc51c0dbeac47243382350f11b8f08.png 资料来源:Octoverse

根据2019年StackOverflow开发人员调查,PHP是第五种最受欢迎的编程语言(第八种最受欢迎的技术):

https://i-blog.csdnimg.cn/blog_migrate/e20ccf4ed4a23291edb1668380a42017.png 资料来源:2019年StackOverflow开发人员调查

尽管PHP仍然是使用最广泛的编程语言之一,但从Google趋势可以明显看出,它的趋势正在缓慢下降:

https://i-blog.csdnimg.cn/blog_migrate/2a80f1318b885da09c9f74098bc7f8b0.png 资料来源:Google趋势

人才市场:

求职网站的确在2020年1月将PHP排名第一,成为美国职位市场上要求最严格的编程语言,排名第7,其职位为18K。此外,PHP开发人员可以期望得到合理的薪水(9万美元),从而使他们在该类别中排名第10:

https://i-blog.csdnimg.cn/blog_migrate/97f908dbd02b30b7f9c06e9752d2de5e.png 资料来源:的确

StackOverflow开发人员调查显示,PHP是2019年收入最低的编程语言:

https://i-blog.csdnimg.cn/blog_migrate/6357a2c0395babf159f9d32d72558aaa.png 资料来源:2019年StackOverflow开发人员调查

主要用例:

  • 服务器端Web应用程序开发
  • 开发CMS系统
  • 独立的Web应用程序开发。

8. Swift

https://i-blog.csdnimg.cn/blog_migrate/f314ce227d67adb4b3fc801168b37d82.png

Swift是也出现在我的列表中的仅有的两种编程语言之一:“ 现在可以学习的7大现代编程语言 ”。由克里斯·拉特纳(Chris Lattner)领导的一组苹果工程师致力于开发一种新的Swift编程语言,主要用于在Mac和iOS平台上替代Objective-C。

它是一种多范例通用用途的已编译编程语言,还可以提高开发人员的工作效率。Swift支持LLVM(由Chris Lattner开发)编译器工具链,例如C / C ++,Rust。

Swift与Objective-C代码库具有出色的互操作性,并且已经将自己确立为iOS App开发中的主要编程语言。作为一种经过编译且功能强大的语言,Swift在其他领域也越来越受欢迎。

3个主要功能:

  • Swift的主要USP之一是其语言设计。凭借更简洁的语法以及开发人员人体工程学的功能,它为Apple生态系统中的Objective-C提供了更高产且更好的替代方案。
  • Swift还提供了现代程序语言的功能:空安全。此外,它还提供了语法糖来避免“ 厄运金字塔”。
  • 作为一种编译语言,Swift正在像C ++一样迅速发展。它还在系统编程和其他领域中越来越受欢迎。

人气:

与其他现代编程语言一样,Swift在开发人员中也非常受欢迎,并在最受欢迎的语言列表中排名第六:

https://i-blog.csdnimg.cn/blog_migrate/a4313ddd9ca779c7280629cc60a1e8b0.png

Swift在其第一个稳定发行版发布仅五年后,就已在TIOBE索引中跻身最受欢迎的编程语言的前十名:

https://i-blog.csdnimg.cn/blog_migrate/014fa69911bf6efce5db74ec620e77bf.png 资料来源:TIOBE

另一个流行的编程语言排名网站PYPL将Swift排名为第9大最受欢迎的编程语言:

https://i-blog.csdnimg.cn/blog_migrate/2e91d603d05cfab5d87e3c527f5b3dc4.png 资料来源:PYPL

StackOverflow开发人员调查将Swift排名为第15名最受欢迎的技术(第12名最受欢迎的编程语言):

https://i-blog.csdnimg.cn/blog_migrate/96b87fbc204d73ec4a8567b89e74b86d.png 资料来源:2019年StackOverflow开发人员调查

Google的趋势还表明,Swift的普及程度急剧上升:

https://i-blog.csdnimg.cn/blog_migrate/9f7af2063687ba325ca3a944a4a4ff5f.png 资料来源:Google趋势

人才市场:

实际上,Swift凭借6 K的空缺排名在美国要求最严格的语言中排名第9。在薪资方面,Indeed将Swift排在第二位,年薪为$ 125 K:

https://i-blog.csdnimg.cn/blog_migrate/f5c6e020067347cdcdf90d3996250825.png 资料来源:Indeed

StackOverflow开发人员调查还显示,与Objective-C相比,Swift开发人员可以以相对较少的经验获得高薪:

https://i-blog.csdnimg.cn/blog_migrate/4879be9b25bbff29fd5cab4d9e91a0f7.png 资料来源:2019年StackOverflow开发人员调查

主要用例:

  • iOS App开发
  • 系统程式设计
  • 客户端开发(通过WebAssembly)
  • 深度学习
  • 物联网

9.Go

https://i-blog.csdnimg.cn/blog_migrate/a390436f8f1a3b09ebdf31dcf85f13e0.png

与Swift一样,Go只是该列表中最近十年的第二种编程语言。同样,像Swift一样,Go是由科技巨头创建的。

在过去的十年中,Google令人沮丧地发现,现有的编程语言无法使用看似无限的Google硬件和人力资源。例如,编译Google的C ++代码库花费了半个小时。此外,他们还想用新语言解决发展规模问题。

Google中的著名软件工程师Rob Pike(UTF-8)和Ken Thompson(UNIX OS)创建了一种新的,实用的,易于学习的,高度可扩展的系统编程语言Go,并于2012年发布。Go 具有运行时和垃圾收集器(几兆字节),但是此运行时打包在生成的可执行文件中。

尽管Go有点功能贫乏,但在短时间内它已成为主流编程语言。

3个主要功能:

  • Go对并发具有语言级别的支持。它通过Goroutine(轻量级绿色线程)和Channel 提供基于CSP的消息传递并发。
  • Go的最大USP是其语言设计和简单性。它成功地结合了Python的简单性和生产力以及C的强大功能。
  • Go嵌入了Garbage Collector(尽管还不如JVM垃圾收集器成熟)。Go开发人员可以使用Java,Python的安全性来编写系统程序。

人气:

像Swift一样,Go的知名度也在迅速提高。

在几乎所有比较网站的流行编程语言中,Go都排名很高,并且已经超过了许多现有语言。以下是2020年1月的TIOBE指数排名,其中Go排名第14:

https://i-blog.csdnimg.cn/blog_migrate/cc0af1b4fe39be62d42cd74dbfd5c982.png 资料来源:TIOBE

2019年StackOverflow开发人员调查还将Go排名为第13名最受欢迎的技术(第10名最受欢迎的编程语言):

https://i-blog.csdnimg.cn/blog_migrate/2102cc86c1c5284b8d1496b58b2f603c.png 资料来源:2019年StackOverflow开发人员调查

根据Stackoverflow的调查,Go是最受欢迎的9种编程语言之一:

https://i-blog.csdnimg.cn/blog_migrate/c355d9d7e0f63a5fa1244003a611ea24.png 资料来源:2019年StackOverflow开发人员调查

根据GitHub Octoverse的说法,Go还是增长最快的10种语言之一:

https://i-blog.csdnimg.cn/blog_migrate/baa78f838b6f2ea0a157131d57ed33de.png 资料来源:Octoverse

Go的日益普及也反映在Google的趋势中,这表明Go在过去五年中越来越受关注:

https://i-blog.csdnimg.cn/blog_migrate/c71044e5ea2341d8511a3f7cdaa350db.png 资料来源:Google趋势

人才市场:

实际上,到2020年1月,Go以4 K的空缺排名,成为Go要求最高的语言中排名第十。在薪资方面,Go排名第9:

https://i-blog.csdnimg.cn/blog_migrate/42485fff3fe09c3fedf81eba86ca0a67.png 资料来源:Indeed

2019年StackOverflow开发人员调查显示,Go是收入最高的编程语言之一:

https://i-blog.csdnimg.cn/blog_migrate/cb3324f59acf0c4671e80a62a2827342.png 资料来源:2019年StackOverflow开发人员调查

主要用例:

  • 系统编程
  • 无服务器计算
  • 商业应用
  • 云原生开发
  • 物联网

10.Ruby

https://i-blog.csdnimg.cn/blog_migrate/29ee0639ce6c8108b805187aa0d86f43.png

Ruby是该列表中的第三种编程语言,由个人开发人员在1990年代开发。日本计算机科学家松本行弘(Yukihiro Matsumoto)创造了Ruby作为“面向对象的脚本语言”,并于1995年发布。

Ruby后来发展成为一种解释型,动态类型化的高级多范式通用编程语言。Ruby是用C实现的,并提供垃圾回收。

像Python一样,Ruby重点关注开发人员的生产力和开发人员的幸福感。尽管Ruby目前还不是被炒作的语言之一,但是对于新开发者来说,这是一门很好的学习语言,它具有平坦的学习曲线。

3个主要功能:

  • Ruby成功地结合了编程语言的一些最佳功能:动态的,面向对象的,功能性的,垃圾收集的和简洁的。
  • 尽管Ruby本身并不是破坏性的,但其Web开发框架Ruby on Rails可能是最具破坏性和影响力的服务器端Web开发框架。
  • Ruby被Twitter,GitHub,Airbnb等一些最大的软件项目所使用,并具有出色的工具和框架支持。

人气:

TIOBE在2020年1月以巨大的积极举措将Ruby排名为第11大最受欢迎的编程语言:

https://i-blog.csdnimg.cn/blog_migrate/274f4eb284630637240bc3e1f4964e2a.png 资料来源:TIOBE

在GitHub存储库贡献中,Octoverse还将Ruby评为2019年最受欢迎的编程语言排名第10位:

https://i-blog.csdnimg.cn/blog_migrate/5c3fdea58afd8f7569bfa74f5460de3c.png 资料来源:Octoverse

2019年StackOverflow开发人员调查将Ruby列为第9最受欢迎的编程语言(第12最受欢迎的技术):

https://i-blog.csdnimg.cn/blog_migrate/1ead7b689b01eb854a96f4bc3eaec4e4.png 资料来源:2019年StackOverflow开发人员调查

近年来,Ruby并不是一门大肆宣传的语言,但根据Google的发展趋势,它一直保持着吸引力:

https://i-blog.csdnimg.cn/blog_migrate/11fa434dd49f6dde454bc7be128aca8f.png 资料来源:Google趋势

人才市场:

在美国的就业市场上,Ruby开发人员可以拿到丰厚的薪水,并居于Indeed的第一位。此外,Indeed在2020年1月为Ruby开发人员发布了1万6千个职位,这使Ruby在此列表中要求最严格的编程语言排名第8。

https://i-blog.csdnimg.cn/blog_migrate/660b4077c08390f7372270ec54ea708d.png 资料来源:Indeed

2019年StackOverflow开发人员调查还显示,Ruby开发人员可以以相对较低的经验获得高薪:

https://i-blog.csdnimg.cn/blog_migrate/949cb10e27318c9b1c74a0707267cfb2.png 资料来源:2019年StackOverflow开发人员调查

交流群

欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。 请勿 在群内发送广告,否则会请出群,谢谢理解~

https://i-blog.csdnimg.cn/blog_migrate/f54f02fa6f4570cd04a9baf24b6cf077.png

https://i-blog.csdnimg.cn/blog_migrate/993137c414431e62d726e391f43d0552.png