查看原文
其他

云技术社区翻译 2018-05-23

软件开发是动态变化的领域,新需求的编程语言、框架和技术可能会出现,并在未来几年逐渐淡出人们的视野。开发人员需要不断学习新的技能以保持先进性。在编写Dojo时,我们不断地评估哪些编程语言对雇主的需求非常大,这样我们就可以让我们的学生进入就业市场。衡量一种编程语言的受欢迎程度有很多方法,但我们认为检查工作需求是最有用的,因为它向开发人员展示了学习提高职业前景的技能。


为了实现这一目标,我们分析了来自职业网站Indeed.com的25种编程语言、堆栈和框架,以确定我们进入2018年时最需要的7种编码语言。这个分析是基于每种语言的工作职位的数量。像Swift和Ruby这样的一些语言并没有跻身前七,因为它们的工作需求较低,尽管开发人员喜欢它们。你可以在我们的博客上看到2016年和2017年的类似分析结果。


这是我们的清单,从最受欢迎到最不需要。

1.Java

与2017年相比,在2018年,Java的人气下降了约6000个,但仍然非常完善。Java已经超过20年了,它被数百万的开发者和数十亿台设备所使用,并且能够通过Java虚拟机在任何硬件和操作系统上运行。所有的Android应用程序都是基于Java的,而在《财富》500强公司中,有90%的公司使用Java作为后台开发的服务器端语言。Java Enterprise Edition 8和Java 9于2017年9月启动,Eclipse Foundation从Oracle手中接管了Java EE。


2.Python

在2017年,Python的人气增长了约5000个职位。它是一种用于web开发的通用编程语言,也是软件开发人员的支持语言。它还广泛应用于科学计算、数据挖掘和机器学习。机器学习开发人员的持续增长和需求可能正在推动Python的流行。


3.JavaScript

JavaScript是编程语言的外祖父,它的流行程度与我们上一篇博客文章中所描述的差不多。这对我们来说并不奇怪,超过80%的开发人员使用了JavaScript,在他们的页面上,95%的网站都使用了动态逻辑。随着物联网和移动设备越来越受欢迎,一些JavaScript的前端框架(如React和AngularJS)有着巨大的未来潜力,所以我们不怀疑JavaScript会很快流行起来。


4. C++

从2017年初到现在,C++的人气几乎没有变化。传统的“C”编程语言的扩展,c++通常用于系统/应用软件、游戏开发、驱动程序、客户机-服务器应用程序和嵌入式固件。许多程序员发现C++复杂且比Python或JavaScript等语言更难以学习和使用,但它仍然在大型企业的许多旧系统中使用。


5. C#

c#(发音为“C sharp”)今年略有下降,c#是微软设计的面向对象的编程语言。运行在.NET平台,使开发比微软以前的语言更快、更容易。c# 7.2于去年11月发布,添加了一些旨在避免不必要的复制的新特性。c#和c++一样,在视频游戏开发中被大量使用,所以任何有抱负的视频游戏开发者都可以很好地学习这两种语言。


6. PHP

PHP是服务器端使用的一种脚本语言,在我们去年的排名中上升到第六位。大多数开发人员使用PHP进行web开发,要么添加HTML无法处理的功能,要么与MySQL数据库交互。


7. Perl

在我们的分析中,Perl下降了约3000个工作职位,排在第七位。Perl 5和Perl 6都在不断地进行着,Perl继续流行于系统和网络管理员,并作为一种胶水语言。


继往开来者

这些语言还没有进入我们的前七,但在2017年的使用和普及程度上一直在增长,以后一定要注意他们!


Swift:iOS和macOS的编程语言Swift在2014年发布,排名第14位。这可能部分是因为许多工作发布要求“iOS”体验,而没有指定特定的语言。根据IEEE光谱和Stackify的说法,Swift的人气一直在稳步上升。


R:排名第11位,但我们预计在接下来的几年里我们的排名会上升。在国际和美国的搜索排名中,它越来越受欢迎,而且是今年“最不受欢迎”的一种语言。它的增长可能是由于大数据分析工作的增长。


Rust:尽管Rust在我们的名单上排名较低,但根据谷歌趋势数据,它的受欢迎程度一直在稳步上升。


其他技术开发人员应该知道的

这些软件框架或技术在技术上并不是编程语言,但对于开发人员来说,在2018年仍然很重要,并且通常为开发人员提供技术技能。


SQL:SQL是用于存储、检索和操作数据库中的数据的标准查询语言。从技术上讲,它并不是一种编程语言,因为它缺乏循环和其他基本功能,但是像PL / SQL这样的扩展已经添加了其中的一些功能。SQL的工作需求非常高,超过3万多的工作发帖,而不是我们的顶级编程语言Java。如果你在2018年只有时间去学习一项新技术,这是一个可以选择的技术。


.NET:NET是微软的桌面、网络、移动、游戏和物联网应用开发平台。它在2016年被开源,并被c#、Visual Basic和f#编程语言使用。.NET Core 一个跨平台的实现,扩展到了iOS,Linux和Android。许多Windows应用程序都在运行。使.NET在商业世界中非常流行,我们希望它变得更受欢迎,因为它已经成为开源。


Node.js:Node.js是一个开源的运行时环境,允许JavaScript代码在服务器端运行,允许web开发人员在整个web应用程序中使用一种语言。Node.js在我们的分析中是第12个最受欢迎的技术,虽然还不够好,但足以显示出对这些技能的强劲需求。我们建议任何JavaScript开发人员花一些时间学习Node.js,使自己更全面,即使他们关注客户端。


MEAN:MEAN堆栈(MongoDB,ExpressJS,AngularJS和node . js)在我们的分析中排名第十八。使用MEAN堆栈允许你使用JavaScript创建整个应用程序,这是简单、快速且用途广泛的。学习的意思是给任何开发者一个强大的背景,这是世界上最常见和最活跃的编程语言之一。


↓↓ 点击"阅读原文" 【加入云技术社区】

相关阅读:

研发大楼发生42岁程序员跳楼事件

Kubernetes 1.9 新特性,支持 IPv6

2018年云的趋势:雾计算

GitHub:2018年技术的六大预测

2017全球十大创业生态系统:中国正在崛起

10大科技趋势,但你不必担心(2018年版)

别在混合云上浪费时间?

混合云、私有云、公共云、多云架构的争论,别选错了!

为什么云平台应该承诺会在Python上持续投入

云推动了IT变革 关于云未来的数据

更多文章请关注

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存