都8012 年了,这些编程语言你居然还不会啊?!

编程现在已经变成最受欢迎的职业之一,不像以前,编制软件只局限于少数几种编程语言。现在,我们有很多种编程语言可以选择。随着跨平台支持的增多,大多数编程语言都可以被用于多种任务。随着现代编程语言的不断多样化,如何选择要学的语言已然变成了一项艰巨的任务。在语言学习的选择上,小编的建议是:在你正式做决定之前,最好先对各方面的因素做个评估,这里的因素包括但不局限于你的个人偏好等。

Bautista是一名拥有4年网络开发经历的程序员,如今的他正开始向人们传授自己的经验及技术。在Bautista看来,“想要找到最符合你日常应用的编程语言,最好的方法之一就是研究一下当今的科技产业正在发生些什么。”行业的发展趋势及其传递出的各种信号都能帮助你更好地做出决定。举例来说,如果你知道了2018年最能赚钱,或是最受欢迎的语言是什么,你就可以调整自己的学习计划,多向这些语言靠一靠。

在本篇文章中,我们将通过对一些资料的分析,得出2018年需求最旺的编程语言Top10。下面就让我们具体来看看吧!

都8012 年了,这些编程语言你居然还不会啊?!

NO.1 JavaScript

JavaScript是一种动态编程语言,主要用于增加网站上的交互性。它通常被描绘成“初学者友好型”的编程语言,这增加了它在开发者社区中的使用率。

 

Stack Overflow是开发人员用来分享技能的热门网站,通常每年都会进行一次调查,从开发人员社区获得有用的统计数据——从他们的工资到他们喜欢的技术。2018年1月,该网站调查了100000多名开发者,并披露了一些有趣的统计数据。

 

下面是 Stack Overflow制作的图表,根据编程语言的流行程度对其进行分类:

都8012 年了,这些编程语言你居然还不会啊?!

正如你在上面看到的,调查显示JavaScript是2018年最优秀的编程语言,连续第六年达到69.8 %全球数百万开发人员使用的代码共享网站GitHub也提到,JavaScript是最常用的编程语言。在2017年底的一份报告中,GitHub称其大多数用户依赖JavaScript作为他们的存储库。

 

下面的图表来自GitHub,显示了编程语言的流行程度

都8012 年了,这些编程语言你居然还不会啊?!

Stack Overflow调查发现,全球范围内JavaScript开发人员每年的收入大约5.5万美元。然而,在北美地区使用这种语言的开发人员年收入约为9.8万美元。流行的就业搜索网站Indeed.com估计,北美地区的JavaScript开发者平均每年收入为110945美元。

NO.2  Java

Java是一种通用编程语言,用于创建跨平台应用程序。无论你想使用哪种平台进行部署——桌面、移动或Web——Java都能满足你的需求。TIOBE编程社区索引根据搜索引擎的结果来衡量编程语言的流行程度,截至2018年7月,该索引将Java列为最流行的语言。

 

以下是TIOBE指数的图表:

都8012 年了,这些编程语言你居然还不会啊?!

根据Stack Overflow调查,Java的受欢迎程度为45.3 %,排名第二(如果不考虑HTML、CSS、SQL——它们主要是非独立的、支持主要语言的语言)。

 

许多知名公司使用Java来开发软件和应用程序,所以如果你碰巧使用Java,绝对不必为找工作而苦恼。Java受欢迎的主要原因是它拥有可移植性、可扩展性和庞大的用户社区。这项调查发现Java开发人员每年能赚10万左右美元。同样Indeed.com估计,一个北美地区的Java开发人员平均年收入为100873美元。

NO.3  Python

Python是一种强大的高级编程语言,在2018年越来越受欢迎。由于它的通用性质,它被广泛用于各种任务,包括Web开发、机器学习和数据分析。Stack Overflow发现,38.8 %的用户主要使用Python进行项目。根据该网站的调查,Python的受欢迎程度在2018年超过了C#,就像它在2017年超过了PHP一样。

 

在GitHub平台上,Python超过Java成为第二大编程语言,2017年打开的Pull Request比2016年多40 %。值得一提的是,人工智能领域的持续发展可能会刺激对Python的需求。事实上,Stack Overflow称之为“增长最快的主要编程语言”。

 

下图显示了Python惊人的增长:

都8012 年了,这些编程语言你居然还不会啊?!

毫无疑问, Python 现在已经统治着编程市场。它发起于 1991 年,自从 YouTube 开始使用它之后,Python 已经真正的成为著名编程语言。Python 可以被用于各类领域,比如,Web 开发、游戏开发、脚本、科学研究、以及大多数你能想到的领域。它是跨平台的,并且运行在一个解释程序中。Python 的语法非常简单,因为它使用缩进代替花括号来对代码块进行分组,因此,代码非常清晰。

NO.4 经典的C语言

C语言在1969年由两位贝尔实验室的科学家创造。仅从年头上来看,也就四十年。但是要知道第一台电子计算机是1946年才发明的,而第一台晶体管计算机诞生于1954年。所以c语言的历史,几乎就是整个计算机发展史。

这是2017年,全球编程语言的排名。大家可以看到c语言排名第二,活跃程度依然很高。然而与c语言同期的其他很多语言,几乎已经看不到他们的身影了。

都8012 年了,这些编程语言你居然还不会啊?!

现在有不少不推荐入门者学习c语言的原因是觉得c语言的语法太复杂,对初学者来说不容易理解。然而这个排名却恰恰显示了这个观点是不正确的。如果这个语言的语法真的非常难学,那么应该会有更多的项目会采用更好的语言来实现。也就不会有c语言依然保持这么高排名的情况了。比如说大家几乎已经不记得的COBOL。

都8012 年了,这些编程语言你居然还不会啊?!

通过c语言的代码,你可以完全确认代码执行的行为。但是对于其他的高级语言,你可能必须要查阅手册,甚至是做实验你才能知道函数的行为。这点其实非常让人头疼。在这我就不举例子了,因为大部分读者应该很难理解。

那我说另一个点,为什么理解机器运行是有益的,尤其对初学者来说。最近在看python的代码,发现python中仍然对数据类型需要区分定义。比如fload64, float是区分的,但是不理解原理的就不清楚这是在说什么。

NO.5  C ++

C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。

 

C++不仅拥有计算机高效运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。

C语言是一把锋利的匕首,而现代动态语言是一把长剑。平时匕首可以藏在身上,大部分时候用长剑披荆斩棘就够了,但当你碰到坚硬的石头,长剑不管用了,那么拿出匕首来果断的切碎他。

对于一个成熟领域而言,我的建议是尽量用更高级一点的开发语言,因为游戏开发很多核心技术都有了较为妥当的解决方法。大量的服务端逻辑其实都是在等待,等待网络,等待数据库,这种情况下用C得不偿失。但是服务端有一些地方还是躲不开C/C++,比如当服务器涉及到 3D计算的话(国内很多2D服务端,国外很多3D服务端),大量的矢量矩阵,除了用C++封装出一套好用的数学库外,即便直接用java写,那也是很麻烦的。

都8012 年了,这些编程语言你居然还不会啊?!

NO.6  C#

C# 是一个现代的、通用的、面向对象的编程语言,它是由微软(Microsoft)开发的,由 Ecma 和 ISO 核准认可的。C# 是由 Anders Hejlsberg 和他的团队在 .Net 框架开发期间开发的。C# 是专为公共语言基础结构(CLI)设计的。CLI 由可执行代码和运行时环境组成,允许在不同的计算机平台和体系结构上使用各种高级语言。

 

C#由微软开发,与当时商业软件开发人员广泛使用的Java相抗衡。它专为在微软平台上开发应用程序而设计,需要Windows上的.NET框架才能工作。与前一年一样,C#保持稳定的位置,名次没有重大变化。可以使用C#开发几乎所有应用程序,但它尤其擅长于Windows桌面应用程序和游戏开发

 

虽然 C# 的构想十分接近于传统高级语言 C 和 C++,是一门面向对象的编程语言,但是它与 Java 非常相似,有许多强大的编程功能,因此得到广大程序员的青睐。

下面列出 C# 一些重要的功能:

  • 布尔条件(Boolean Conditions)

  • 自动垃圾回收(Automatic Garbage Collection)

  • 标准库(Standard Library)

  • 组件版本(Assembly Versioning)

  • 属性(Properties)和事件(Events)

  • 委托(Delegates)和事件管理(Events Management)

  • 易于使用的泛型(Generics)

  • 索引器(Indexers)

  • 条件编译(Conditional Compilation)

  • 简单的多线程(Multithreading)

  • LINQ 和 Lambda 表达式

  • 集成 Windows

都8012 年了,这些编程语言你居然还不会啊?!

NO.7 Visual Basic .NET

Visual Basic .NET与去年一样,在指数中继续保持第六位。它是微软的OOP语言之一,结合了基于.NET框架的类和运行时环境的强大功能。它自VB6衍生而来,擅长开发GUI应用程序,为程序员简化了任务,并提高生产力。对于程序员来说,除了Web服务和Web开发外,VB.NET还为针对Windows平台开发桌面应用程序提供了一种快速简单的方法。

Visual Basic 是一个视觉和事件驱动的程序语言。在 Visual Basic里,因为用户可点击任何一对象,所以每个对象都需要设计一套程序来应对这些动作。因此, 一个Visual Basic程序里包含了许多子程序,每个子程序都有自己的程序代码,每个程序都可独立操作,也可联合起来进行操作。

在2002年,Microsoft发布了Visual Basic.NET(VB.NET)来替代Visual Basic 6.之后,Microsoft在2008年宣布VB6为旧版编程语言。但是,Microsoft仍然为VB6提供了一些形式的支援。 VB.NET是在.NET Framework上实现的完全面向对象的编程语言。它是为了适应网络和移动应用程序的开发而创建的。

随后,微软发布了许多版本的VB.NET。它们是VB2005,VB2008,VB2010,VB2012,VB2013,VB2015和VB2017。虽然.NET部分在2005年被丢弃,但是自2002年以来发行的所有版本的Visual Basic编程语言都被视为VB.NET编程语言。

都8012 年了,这些编程语言你居然还不会啊?!

NO.8  SQL

SQL夺得第九名,实现了显著的增长,毕竟去年它未能跻身于TIOBE指数20大编程语言。尽管存在其他数据库技术,但用于管理数据库的这种标准查询语言在过去四十年一直处于主导地位。原因在于它具有简单性、可靠性、无处不在,以及对保持这种开源语言活力大有帮助的活跃社区。与其他语言相比,初学者通常更容易学习SQL;就职业发展而言,像数据分析员这类高薪职位要求SQL非懂不可。

 

结构化查询语言(Structured Query Language,简称SQL)是一种介于关系代数与关系演算之间的语言,是一种用来与关系数据库管理系统通信的标准计算机语言。其功能包括数据查询、数据操纵、数据定义和数据控制4个方面,是一个通用的、功能极强的关系数据库语言。目前已成为关系数据库的标准语言。

SQL语言集数据查询(Data Query)、数据操纵(Data Manipulation)、数据定义(Data Definition)和数据控制(Data Control)功能于一体,充分体现了关系数据语言的特点和优点。通过DDL(Data Definition Language)语言来实现。可用来支持定义或建立数据库对象(如表、索引、序列、视图等),定义关系数据库的模式、外模式、内模式。常用DDL语句为不同形式的CREATE、ALTER、 DROP命令。

数据操纵功能通过DML(Data Manipulation Language)语言来实现,DML包括数据查询和数据更新两种语句,数据查询指对数据库中的数据进行查询、统计、排序、分组、检索等操作.数据更新指对数据的更新、删除、修改等操作。数据库的数据控制功能指数据的安全性和完整性。通过数据控制语句DCL(Data Control Language)来实现。

都8012 年了,这些编程语言你居然还不会啊?!

NO.9  PHP

PHP 开始仅作为一个小的开放源码项目,现在越来越多的人发现它非常实用。早在 1994 年,Rasmus Lerdorf 开发出第一版本 PHP。PHP 是递归首字母缩写”PHP: Hypertext Preprocessor “PHP 是嵌入在 HTML 中的服务器端脚本语言。它用来管理动态内容、数据库、会话跟踪,甚至建立整个电子商务网站。

 

它集成了许多流行的数据库,包括 MySQL、PostgreSQL、Oracle、Sybase、Informix 和 Microsoft SQL Server。尤其在 Unix 系统里 PHP 作为 Apache 编译模块时,PHP 有令人欣喜的执行力。一旦开始,MySQL 服务器将在设定的时间内执行非常复杂的命令查询巨大的结果集。

 

PHP 支持一大批主要协议,如 POP3、IMAP 和 LDAP。PHP4 添加了对 Java 的支持,并且首次分布对象体系结构 (COM 和 CORBA),并制作多层开发。PHP 语言简洁: PHP 语言系统要求不需要太严谨。PHP 语法类似 C 语言

据TIOBE显示,PHP在TIOBE最受欢迎的编程语言排行榜中位居第七,取代JavaScript成为更受欢迎的脚本语言。 PHP主要用在服务器端上用于Web开发,约占网站总数的80%。

Facebook最初使用的就是PHP,PHP在WordPress内容管理系统中扮演的角色让它很受欢迎。PHP提供了几个框架,比如Laravel和Drupal,帮助开发人员更快地构建应用程序,拥有更高的可扩展性和可靠性。因此,如果你在找Web开发方面的职位,PHP是不错的选择。

都8012 年了,这些编程语言你居然还不会啊?!

NO.10  R

R语言,一种自由软件编程语言与操作环境,主要用于统计分析、绘图、数据挖掘。R本来是由来自新西兰奥克兰大学的罗斯·伊哈卡和罗伯特·杰特曼开发(也因此称为R),现在由“R开发核心团队”负责开发。R基于S语言的一个GNU计划项目,所以也可以当作S语言的一种实现,通常用S语言编写的代码都可以不作修改的在R环境下运行。R的语法是来自Scheme。

R的源代码可自由下载使用,亦有已编译的可执行文件版本可以下载,可在多种平台下运行,包括UNIX(也包括FreeBSD和Linux)、Windows和MacOS。R主要是以命令行操作,同时有人开发了几种图形用户界面。

 

R语言作为统计学一门语言,一直在小众领域闪耀着光芒。直到大数据的爆发,R语言变成了一门炙手可热的数据分析的利器。随着越来越多的工程背景的人的加入,R语言的社区在迅速扩大成长。现在已不仅仅是统计领域,教育,银行,电商,互联网….都在使用R语言。

要成为有理想的极客,就不能停留在语法上,要掌握牢固的数学,概率,统计知识,同时还要有创新精神,把R语言发挥到各个领域。

近些年来,R编程语言的需求和使用它的人数在迅速增加。从TIOBE排名可以明显看出,R的名次上升了四位:从第14上升到了第10。对于数据科学家来说,R是统计、图形表示和数据可视化分析的首选。它已变成了一种大数据工具,应用于机器学习以及科学计算的一些领域。R编程语言的范围和前景大有希望,对于有志于数据科学的人来说,它绝对是一种稳定、有钱景的职业选择。

都8012 年了,这些编程语言你居然还不会啊?!

总结

显而易见,如果你的目的是找工作的话,JavaScript、Java和Python大概是2018年最适合你学的编程语言了。尽管来自其他各方的调查结果可能有细微的不同,但这三门语言热度的确极高,每一门都值得你去学习。如果你能成功将其纳入自己的工作箱,则必定能让你的职业生涯更上一个台阶。

都8012 年了,这些编程语言你居然还不会啊?!
都8012 年了,这些编程语言你居然还不会啊?!
都8012 年了,这些编程语言你居然还不会啊?!
都8012 年了,这些编程语言你居然还不会啊?!

原文始发于微信公众号(PowerCareer):都8012 年了,这些编程语言你居然还不会啊?!

ajax-loader