编者按
0 Java的中年危机 前段时间,招聘网站100offer发布了一篇名为“2017年 Java 程序员,风光背后的危机”的调查研究报告。报告中指出,2017 年的 Java 程序员在维持着市场需求和平均工资上涨的风光背后,埋伏着一些潜在的危机。主要体现在: 1)市场需求增长远少于 Java 程序员供应增长,Java 程序员面临更加激烈的竞争; 2)受供应量的大幅增长影响,Java 程序员平均跳槽薪资涨薪幅度较低; 3)需求方对 Java 程序员提出更加严苛的选材标准。 Java 程序员的供应较 2016 年增加 25% Java 程序员的需求量涨幅远低于供应涨幅 在供应量增长的大背景下,Java 程序员出现涨薪幅度较低的情况 难道说,今年才不过28岁的Java真的要提前步入中年危机了吗? 紧接着,小编在整理了IEEE Spectrum 自2014年开始发布的编程语言排行榜Top 10后发现,Java的确已经逐渐跌落神坛。 IEEE Spectrum 2014编程语言排行榜 IEEE Spectrum 2015编程语言排行榜 IEEE Spectrum 2016编程语言排行榜 IEEE Spectrum 2017编程语言排行榜 纵观近几年的榜单排名,Java在占据排行榜首位两年之后,排名开始逐步下滑;而Python 在2017年首次超越 Java 到达榜首。 IEEE Spectrum 自2014年便开始维持一年一度的更新,每年对 48 种语言进行排行。IEEE Spectrum 的数据整合来源于10 个重要线上数据源,如 Stack Overflow、Twitter、Reddit、IEEE Xplore、GitHub、CareerBuilder 等平台。 除此之外,结合PYPL 指数榜的排名来看,Python在今年5月份首次以 22.8% 的成绩击败了 22.5% 的 Java之后仍在持续保持上涨趋势。 PYPL 编程语言指数5月排行榜 Top 10 PYPL 编程语言指数7月排行榜 Top 10 相比之下,Java的增长趋势在逐步变得缓慢甚至出现下跌情况。 那么,到底是选Java还是选Python?这真是一道送命题! 接下来小编将基于Stack Overflow在2017年对超过64000开发者的调查结果之上,从以下三个方面依次为大家做一下分析。 1 Java?Python? 谁更受欢迎? 最流行的编程语言--所有答卷人 最流行的编程语言--专业开发者 据最流行的技术--编程语言的调查结果显示,在所有参与调查的人当中,Java占比39.3%,Python占比31.7%;在参与调查的专业开发者中,Java占比38.3%,Python占比27.6%。 编程语言与时间趋势图 但结合近几年的数据,我们发现随着时间的推移,受访者中使用Java的人数百分比在逐年下滑,使用Python的人却越来越多。其实这也不难理解,人工智能浪潮的兴起与TensorFlow以及爬虫框架的普及让Python有了用武之地;大数据与云计算解决方案的使用也为Python的成功猛推了一把。作为数据科学最流行的语言之一,Python被广泛应用于机器学习、人工智能系统以及各种现代技术。 在最受欢迎、最厌恶和最想拥有的编程语言调查中,Python以占比20.6%的数据荣登最想拥有编程语言排行榜第一位,Java占比11.7%仅居第四。 在最受欢迎的编程语言排行榜中,Python也以62.7%的比重力压Java。 而在最令人恐惧的编程语言排行榜中,并未发现Python的身影。 可见,“人生苦短,我选Python”这句话并不是毫无道理的。Python的语法简洁优美、功能强大、标准库跟第三方库非常强大、应用领域也非常广。 2 Java?Python? 哪个薪资更高? 从上图我们可以看出,在同样拥有多年工作经验的前提下,Python程序员的薪资比Java程序员的薪资明显要高出很多。其他的例如Go、Rust和Clojure等,即使他们没有很多年的工作经验,也会得到较多的报酬。然而,使用低于蓝线语言(如PHP)的开发人员,即使有多年的经验,得到的报酬也很少。 而在开发人员对薪资的自我评估来看,无论是Java程序员还是Python程序员都表示自己薪资偏低。 3 Java?Python? 哪个前景更好? 据BOSS直聘发布的《2017互联网人才趋势白皮书》的报告显示,2017年互联网领域薪资增幅最高的Top15职位中,新兴技术岗位普遍排在前列。相比之下,通用类岗位程序员由于从业人数不断上升,人才稀缺程度大幅缓解,招聘薪酬增幅缓慢,有些甚至不升反降。 而从行业细分来看,游戏产业平均薪资增幅最高,文化娱乐产业次之,信息安全产业跻身前三。而社交网络领域虽然薪资涨幅排名第六,但其平均薪资一直较高。据Boss直聘研究院数据显示,2017年社交网络平均招聘薪资高于互联网行业整体招聘薪资16.7个百分点。 通过上面几幅图片的对比,我们发现:在信息安全领域的高需求技术职位中,Java仍是需求占比最高的技术职位,但Python的薪资增幅明显高于Java。 而在社交网络领域,Java同样是需求占比最高的技术职位,但薪资水平却并不是最高。 4 Java OR Python? 经过上文的一些对比之后我们发现,无论是在新兴领域还是固有领域,Java程序员的需求占比都高于Python程序员,但Python程序员的薪资涨幅明显强于Java程序员。而在人才需求升级的同时,互联网公司对人才技能的需求也在不断提高。 新型互联网人才需掌握的技能 在2017年需求增幅最快的Top 25个技能中,Python名列前茅。原因我们在上文就有提及,Python由于语法简洁,功能强大,且在人工智能、大数据方面展现出效率优势,越来越受到欢迎。 最后,我们结合目前人工智能与大数据领域的发展现状来重新审视选Java还是选Python这个问题。 Java无疑仍是编程语言中的佼佼者,无论是市场需求还是薪资水平都名列前茅;但是随着人工智能浪潮的兴起、TensorFlow以及爬虫框架的普及以及大数据与云计算解决方案的使用,Python已经被广泛应用于机器学习、人工智能系统以及各种现代技术,Java的霸主地位已经被动摇。 而对于广大的Java程序员而言,学Python已经成为迫在眉睫的一件事。 资料参考:
|
|