2018 最吸金的编程语言排行揭晓,第一居然是...

3,447 阅读7分钟

 


文/ 小咪整编

译/ Cygwin


最近,Coding dojo 分析了来自著名求职招聘网站 indeed.com 上的二十五种编程语言,栈和框架,分析得出 2018 年最具有前景的 7 门编程语言。Java 居然越过大热门的 Python,排名第一!




从图表中可以看 Java 作为一个 20 年的老牌编程语言,依然排列第一,很多大企业的后端服务的开发都离不开 Java,相对于2017年来说有所下滑,但是依然不能动摇 Java 的霸主地位。排名第二的 Python 由于人工智能的火爆,进入前二,但这种火爆带来的作用依然不能对 Java 产生很大的影响。有种要一统天下感觉的 Javascript 进入前三,由于几乎所有的 web 应用都需要用到,并且 nodejs 也可以用于后端应用开发,因此 Javascript 位列第三也是实至名归。


为什么 Java 如此受欢迎?


Java 的设计比 C 更容易学习和使用。它也是最早的完全支持面向对象的编程语言之一,因为这个原因,它很快获得了一大批拥趸。


今天,Java 广泛用于编程各种解决方案,数百万个网络应用和 Web 小程序在使用 Java。流行的网站比如 Linked,Twitter,eBay 等都在广泛地使用 Java,并且 Google 采取了 Java 作为开发 Android 应用的主要编程语言。


最近,Java 也成为物联网(IoT)开发非常受欢迎的工具,因为它提供安全,可移植的代码,可以在任何地方使用。




受欢迎的部分原因在于 Java 源代码可以编译成字节码,它可以在安装了 Java 虚拟机的任何服务器或者客户端计算机里运行。这意味着 Java 程序是独立于平台的 —— 它们可以在许多操作系统上运行包括 Windows,iOS,Linux 以及物联网操作系统比如 RIOT,Contiki 和 FreeRTOS。


相比之下,C 写的 iOS 程序将不能在 Windows 机器上原样使用。


容易学习的编程语言


像许多流行的编程语言一样,学习 Java 相对容易,因为有许多可用的资源。它还有许多标准类库和大量的第三方库。对于有 C 或 Java 程序员使用集成开发环境(比如 IntelliJ IDEA)来帮助他们进行高效地编程。


这些 IDE 显著地改善了编程体验,并提供了调试这一重要帮助,对于初学者来说很重要 —— 没有比写了一些代码但是不知道错误在哪里更让人糟心的了!




Android 和 IoT 开发的理想编程语言


假设你对于这两种技术都感兴趣,Java 可能是你理想的编程语言。它在这些应用的部分用处在于它具备高度的可移植性,但它同时还有一些别的优点:


安全性高:Java 在构建时已经考虑到安全性了。


不可思议的性能:现代 Java 的速度非常快,它是静态的,并且多线程的功能让多核的现代计算机(智能手机)可以做得更多更快。


成熟:作为一门根深蒂固的编程语言,Java 有一个大型的社区支持它,海量的资源,并且许多问题已经得到解决。


拥有大量工作机会


根据 Stack Overflow 调查显示,Java 是总排名第三的编程语言,36.3% 的调查者在使用它(近几年来明显下降 —— 2013 年的数据为 42.5%)。许多不同类型的开发者使用它:


30.7%全栈开发者使用 Java

16.8%的前端开发者使用 Java

41.6%的后端开发者使用 Java

54.2% 的移动开发者使用 Java




技能分析平台 Gooroo 报告说 Java 有很好的工作机会,在美国每个月大约有 17,000 个职位广告,平均薪资为 100,000 美元。在世界上,每个月大约有 30,000 个职位广告,平均薪资为 90,000 美元。


如何开始学习 Java ?


学习任何一门编程语言,都是为了去实现一个个项目,来解决实际的问题。无论项目是大还是小,都关联着许多知识与技能。


例如要用 Java 写一个「文件资源管理器」的桌面应用,就需要MVC设计模式、组件化构建、对象集合及操作、打包与部署、多线程遍历与异步I/O操作等知识模块。缺少任意一个模块,都难以完成一个项目。




所以完成一个项目,就像是在完成一张拼图,要把一个个知识模块搞定,再拼成一个项目,这样「项目驱动式」的学习,是目前公认最高效的编程学习方法:


容易入门:只要掌握了基本的知识和编程技巧,就具备了完成简单项目的能力,就可以开始使用这种学习方法。


缺哪补哪:在动手做项目的过程中,就可以检验自己的学习成果,发现自己欠缺的知识模块,针对性学习更高效。


有成就感:学习的成果,体现为一个个可解决实际问题的项目,让学习得到即时反馈,成就感爆棚!


要注意的是,项目驱动式的学习,项目选择要循序渐进,每个项目既要包含之前学过的知识模块,又要有新的知识模块让自己来学习。


那要如何从零开始,通过项目驱动来高效学习 Java 呢?啃厚厚的教材,或者看各种视频教程,显然都无法让自己开始动手做项目。你需要从实战项目开始入门 Java !


作为将 Learning by Doing 作为自己的学习理念的 Udacity 优达学城,在纳米学位项目中,从易到难设计了不同的实战项目,并以项目为中心组织学习模块,真正实现了项目驱动式的高效学习。


挑战硅谷的 Java 实战项目


优达学城 Java 入门实战课程,3 月正式在中国发布!你将有机会从零开始,挑战 3 个来自硅谷的 Java 实战项目,并享受 Java 专家逐行代码审阅和一对一技术辅导,8 周掌握这门被最多人使用的编程语言,成为职场抢手人才。




作为首批中国学员,课程中你将挑战以下 3 个实战项目:


实战项目 1

井字棋游戏



完成 「井字棋游戏」 游戏程序的判断逻辑,练习 Java 的基本语法和逻辑,在项目中熟练掌握运用 Java 语言。好的开始是成功的一半!我们将会提供游戏的 UI,你用已经学会的 Java 基础知识 ,为游戏编写判定胜负的逻辑。你可以和电脑对战,也可以和朋友对战。让朋友们来体验你的第一个编程作品。


实战项目 2

填字游戏



设计一个猜单词的小游戏。你将会使用「类和方法」来设计和编写游戏,让游戏者在有限的次数内,通过猜字母的方式,猜出正确的英文单词。在项目中建立结构化编程思维,实现高效编程。


实战项目 3

太空挑战



在项目中建立和熟练掌握面向对象思维,尝试从简单问题开始解决变量复杂的问题。你会挑战模拟在人类定居火星的过程中,向火星发送一系列物品,比如:居住舱、燃料库、食品和探测车等。你会尝试自己定义类、方法、接口,编写程序来确定应该如何选择更合适的火箭类型。


硅谷大学让你在业余时间掌握新技能

Udacity 优达学城的创始人是 Google 无人车之父 Sebastian Thrun,与 Google、Facebook、亚马逊等全球领先企业联合打造了一系列前沿技术课程,并提供人工项目审阅、一对一在线答疑等学习服务,旨在让每个人都能用远低于线下教育的成本硅谷最新最热技术教育,帮助学员成为能驱动企业创新变革的抢手人才。




@所有人,从零掌握最吸金的编程语言,「Java 入门」基石纳米学位。Udacity 专为新手打造,限量席位今日开放!

立即加入,免费试听