源 / 頂級(jí)程序員
文 / 奶糖
編者按
Java一直以來(lái)都是頗受廣大程序員熱愛(ài)的一門(mén)編程語(yǔ)言,它吸收了C++的各種優(yōu)點(diǎn),還摒棄了C++里難以理解的多繼承、指針等概念,功能強(qiáng)大、簡(jiǎn)單易用。而因?yàn)镴ava易學(xué)、安全性、可移植、跨平臺(tái)等特點(diǎn),并且提供了大量開(kāi)源框架和組件,易于構(gòu)建大型企業(yè)應(yīng)用項(xiàng)目,因此政府組織、機(jī)構(gòu)及大型企業(yè)都青睞于用Java開(kāi)發(fā)信息系統(tǒng),企業(yè)用人需求量巨大,Java程序員一直是招聘市場(chǎng)上的寵兒。
0
Java的中年危機(jī)
前段時(shí)間,招聘網(wǎng)站100offer發(fā)布了一篇名為“2017年 Java 程序員,風(fēng)光背后的危機(jī)”的調(diào)查研究報(bào)告。報(bào)告中指出,2017 年的 Java 程序員在維持著市場(chǎng)需求和平均工資上漲的風(fēng)光背后,埋伏著一些潛在的危機(jī)。主要體現(xiàn)在:
1)市場(chǎng)需求增長(zhǎng)遠(yuǎn)少于 Java 程序員供應(yīng)增長(zhǎng),Java 程序員面臨更加激烈的競(jìng)爭(zhēng);
2)受供應(yīng)量的大幅增長(zhǎng)影響,Java 程序員平均跳槽薪資漲薪幅度較低;
3)需求方對(duì) Java 程序員提出更加嚴(yán)苛的選材標(biāo)準(zhǔn)。
Java 程序員的供應(yīng)較 2016 年增加 25%
Java 程序員的需求量漲幅遠(yuǎn)低于供應(yīng)漲幅
在供應(yīng)量增長(zhǎng)的大背景下,Java 程序員出現(xiàn)漲薪幅度較低的情況
難道說(shuō),今年才不過(guò)28歲的Java真的要提前步入中年危機(jī)了嗎?
緊接著,小編在整理了IEEE Spectrum 自2014年開(kāi)始發(fā)布的編程語(yǔ)言排行榜Top 10后發(fā)現(xiàn),Java的確已經(jīng)逐漸跌落神壇。
IEEE Spectrum 2014編程語(yǔ)言排行榜
IEEE Spectrum 2015編程語(yǔ)言排行榜
IEEE Spectrum 2016編程語(yǔ)言排行榜
IEEE Spectrum 2017編程語(yǔ)言排行榜
縱觀近幾年的榜單排名,Java在占據(jù)排行榜首位兩年之后,排名開(kāi)始逐步下滑;而Python 在2017年首次超越 Java 到達(dá)榜首。
IEEE Spectrum 自2014年便開(kāi)始維持一年一度的更新,每年對(duì) 48 種語(yǔ)言進(jìn)行排行。IEEE Spectrum 的數(shù)據(jù)整合來(lái)源于10 個(gè)重要線(xiàn)上數(shù)據(jù)源,如 Stack Overflow、Twitter、Reddit、IEEE Xplore、GitHub、CareerBuilder 等平臺(tái)。
除此之外,結(jié)合PYPL 指數(shù)榜的排名來(lái)看,Python在今年5月份首次以 22.8% 的成績(jī)擊敗了 22.5% 的 Java之后仍在持續(xù)保持上漲趨勢(shì)。
PYPL 編程語(yǔ)言指數(shù)5月排行榜 Top 10
PYPL 編程語(yǔ)言指數(shù)7月排行榜 Top 10
相比之下,Java的增長(zhǎng)趨勢(shì)在逐步變得緩慢甚至出現(xiàn)下跌情況。
那么,到底是選Java還是選Python?這真是一道送命題!
接下來(lái)小編將基于Stack Overflow在2017年對(duì)超過(guò)64000開(kāi)發(fā)者的調(diào)查結(jié)果之上,從以下三個(gè)方面依次為大家做一下分析。
1
Java?Python?
誰(shuí)更受歡迎?
最流行的編程語(yǔ)言--所有答卷人
最流行的編程語(yǔ)言--專(zhuān)業(yè)開(kāi)發(fā)者
據(jù)最流行的技術(shù)--編程語(yǔ)言的調(diào)查結(jié)果顯示,在所有參與調(diào)查的人當(dāng)中,Java占比39.3%,Python占比31.7%;在參與調(diào)查的專(zhuān)業(yè)開(kāi)發(fā)者中,Java占比38.3%,Python占比27.6%。
編程語(yǔ)言與時(shí)間趨勢(shì)圖
但結(jié)合近幾年的數(shù)據(jù),我們發(fā)現(xiàn)隨著時(shí)間的推移,受訪者中使用Java的人數(shù)百分比在逐年下滑,使用Python的人卻越來(lái)越多。其實(shí)這也不難理解,人工智能浪潮的興起與TensorFlow以及爬蟲(chóng)框架的普及讓Python有了用武之地;大數(shù)據(jù)與云計(jì)算解決方案的使用也為Python的成功猛推了一把。作為數(shù)據(jù)科學(xué)最流行的語(yǔ)言之一,Python被廣泛應(yīng)用于機(jī)器學(xué)習(xí)、人工智能系統(tǒng)以及各種現(xiàn)代技術(shù)。
在最受歡迎、最厭惡和最想擁有的編程語(yǔ)言調(diào)查中,Python以占比20.6%的數(shù)據(jù)榮登最想擁有編程語(yǔ)言排行榜第一位,Java占比11.7%僅居第四。
在最受歡迎的編程語(yǔ)言排行榜中,Python也以62.7%的比重力壓Java。
而在最令人恐懼的編程語(yǔ)言排行榜中,并未發(fā)現(xiàn)Python的身影。
可見(jiàn),“人生苦短,我選Python”這句話(huà)并不是毫無(wú)道理的。Python的語(yǔ)法簡(jiǎn)潔優(yōu)美、功能強(qiáng)大、標(biāo)準(zhǔn)庫(kù)跟第三方庫(kù)非常強(qiáng)大、應(yīng)用領(lǐng)域也非常廣。
2
Java?Python?
哪個(gè)薪資更高?
從上圖我們可以看出,在同樣擁有多年工作經(jīng)驗(yàn)的前提下,Python程序員的薪資比Java程序員的薪資明顯要高出很多。其他的例如Go、Rust和Clojure等,即使他們沒(méi)有很多年的工作經(jīng)驗(yàn),也會(huì)得到較多的報(bào)酬。然而,使用低于藍(lán)線(xiàn)語(yǔ)言(如PHP)的開(kāi)發(fā)人員,即使有多年的經(jīng)驗(yàn),得到的報(bào)酬也很少。
而在開(kāi)發(fā)人員對(duì)薪資的自我評(píng)估來(lái)看,無(wú)論是Java程序員還是Python程序員都表示自己薪資偏低。
3
Java?Python?
哪個(gè)前景更好?
據(jù)BOSS直聘發(fā)布的《2017互聯(lián)網(wǎng)人才趨勢(shì)白皮書(shū)》的報(bào)告顯示,2017年互聯(lián)網(wǎng)領(lǐng)域薪資增幅最高的Top15職位中,新興技術(shù)崗位普遍排在前列。相比之下,通用類(lèi)崗位程序員由于從業(yè)人數(shù)不斷上升,人才稀缺程度大幅緩解,招聘薪酬增幅緩慢,有些甚至不升反降。
而從行業(yè)細(xì)分來(lái)看,游戲產(chǎn)業(yè)平均薪資增幅最高,文化娛樂(lè)產(chǎn)業(yè)次之,信息安全產(chǎn)業(yè)躋身前三。而社交網(wǎng)絡(luò)領(lǐng)域雖然薪資漲幅排名第六,但其平均薪資一直較高。據(jù)Boss直聘研究院數(shù)據(jù)顯示,2017年社交網(wǎng)絡(luò)平均招聘薪資高于互聯(lián)網(wǎng)行業(yè)整體招聘薪資16.7個(gè)百分點(diǎn)。
通過(guò)上面幾幅圖片的對(duì)比,我們發(fā)現(xiàn):在信息安全領(lǐng)域的高需求技術(shù)職位中,Java仍是需求占比最高的技術(shù)職位,但Python的薪資增幅明顯高于Java。
而在社交網(wǎng)絡(luò)領(lǐng)域,Java同樣是需求占比最高的技術(shù)職位,但薪資水平卻并不是最高。
4
Java OR Python?
經(jīng)過(guò)上文的一些對(duì)比之后我們發(fā)現(xiàn),無(wú)論是在新興領(lǐng)域還是固有領(lǐng)域,Java程序員的需求占比都高于Python程序員,但Python程序員的薪資漲幅明顯強(qiáng)于Java程序員。而在人才需求升級(jí)的同時(shí),互聯(lián)網(wǎng)公司對(duì)人才技能的需求也在不斷提高。
新型互聯(lián)網(wǎng)人才需掌握的技能
在2017年需求增幅最快的Top 25個(gè)技能中,Python名列前茅。原因我們?cè)谏衔木陀刑峒埃?strong>Python由于語(yǔ)法簡(jiǎn)潔,功能強(qiáng)大,且在人工智能、大數(shù)據(jù)方面展現(xiàn)出效率優(yōu)勢(shì),越來(lái)越受到歡迎。
最后,我們結(jié)合目前人工智能與大數(shù)據(jù)領(lǐng)域的發(fā)展現(xiàn)狀來(lái)重新審視選Java還是選Python這個(gè)問(wèn)題。
Java無(wú)疑仍是編程語(yǔ)言中的佼佼者,無(wú)論是市場(chǎng)需求還是薪資水平都名列前茅;但是隨著人工智能浪潮的興起、TensorFlow以及爬蟲(chóng)框架的普及以及大數(shù)據(jù)與云計(jì)算解決方案的使用,Python已經(jīng)被廣泛應(yīng)用于機(jī)器學(xué)習(xí)、人工智能系統(tǒng)以及各種現(xiàn)代技術(shù),Java的霸主地位已經(jīng)被動(dòng)搖。
而對(duì)于廣大的Java程序員而言,學(xué)Python已經(jīng)成為迫在眉睫的一件事。
資料參考:
1.100 offer:《2017年 Java 程序員,風(fēng)光背后的危機(jī)》
2.BOSS直聘:《2017互聯(lián)網(wǎng)人才趨勢(shì)白皮書(shū)》
3.StackOverFlow:Developer Survey Results 2017
聯(lián)系客服