2019年世界頂級(jí)編程語(yǔ)言Python三連冠
來(lái)源:
奇酷教育 發(fā)表于:
2019年世界頂級(jí)編程語(yǔ)言Python三連冠。
IEEE Spectrum 編程語(yǔ)言排行榜一年發(fā)布一次。
這個(gè)排行榜已經(jīng)連續(xù)發(fā)布了六年。
Python 三連冠。
最終的排行榜將多個(gè)數(shù)據(jù)源的編程語(yǔ)言流行度排名結(jié)合起來(lái),得出目前業(yè)內(nèi)人們關(guān)注度最高的語(yǔ)言。
這些信息來(lái)源包括谷歌搜索、谷歌趨勢(shì)、推特、GitHub、Stack Overflow、Reddit、Hacker News、CareerBuilder、IEEE Job Site 和 IEEE Xplore Digital Library。
Python
Python 為何能連續(xù)三年奪冠?
Python 的高速發(fā)展主要原因是軟件工程的蓬勃發(fā)展,它吸引了許多零基礎(chǔ)的初學(xué)者。
Java 的編程方法對(duì)于初學(xué)者來(lái)說(shuō)太冗長(zhǎng)了,單單想要完全理解和運(yùn)行在 Java 中的“hello world”這樣的簡(jiǎn)單程序,你就需要去了解類(lèi)、靜態(tài)方法和包。
在 C 語(yǔ)言中,這要簡(jiǎn)單一些,但是在內(nèi)存管理上還是會(huì)出現(xiàn)一些問(wèn)題。
但在 Python 這里,就只是一行代碼的事。
同時(shí)Python的流行很大程度是在人工智能領(lǐng)域。Keras庫(kù)是深度學(xué)習(xí)開(kāi)發(fā)人員中的重量級(jí),Keras提供了一個(gè)到TensorFlow、CNTK深度學(xué)習(xí)框架和工具包的接口。
所以,Python 越來(lái)越流行,被越來(lái)越多的開(kāi)發(fā)者使用。
Java、C/C++
Java、C 和 C++ 的戰(zhàn)局。
Java以3.7%的微弱劣勢(shì)敗給Python,C語(yǔ)言則以94.4%保住第三的寶座,而C++以低于Python12.5%的速度進(jìn)入人們的視野。
Java 為什么依然能榮登第二呢?
第一,Java 語(yǔ)言運(yùn)用廣泛。
目前 Java 語(yǔ)言在 Web 開(kāi)發(fā)領(lǐng)域、Android 開(kāi)發(fā)領(lǐng)域、大數(shù)據(jù)開(kāi)發(fā)領(lǐng)域以及各種后端服務(wù)開(kāi)發(fā)領(lǐng)域都有廣泛的用戶(hù)基礎(chǔ)。
第二,隨著 5G 標(biāo)準(zhǔn)的逐漸落地,未來(lái)物聯(lián)網(wǎng)的發(fā)展將會(huì)迎來(lái)更多的機(jī)會(huì),而物聯(lián)網(wǎng)的發(fā)展必將帶動(dòng)大數(shù)據(jù)、云計(jì)算、人工智能領(lǐng)域的發(fā)展,而 Java 在這些領(lǐng)域都有應(yīng)用。
Matlab
在前十名匯總中Matlab的出現(xiàn)著實(shí)讓人驚訝一把。
MATLAB是美國(guó)MathWorks公司出品的商業(yè)數(shù)學(xué)軟件,用于算法開(kāi)發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計(jì)算的高級(jí)技術(shù)計(jì)算語(yǔ)言和交互式環(huán)境,主要包括MATLAB和Simulink兩大部分。
它的出現(xiàn)只是反映Matlab在硬件工程中的突出地位,尤其是通過(guò)MathWorks的圖形Simulink包運(yùn)行仿真或創(chuàng)建控制系統(tǒng)感興趣的人。簡(jiǎn)單說(shuō)一下Matlab的優(yōu)勢(shì)特點(diǎn),讓你清楚地知道為什么它受人追捧。
第一高效的數(shù)值計(jì)算及符號(hào)計(jì)算功能,能使用戶(hù)從繁雜的數(shù)學(xué)運(yùn)算分析中解脫出來(lái);
第二,具有完備的圖形處理功能,能實(shí)現(xiàn)計(jì)算結(jié)果和編程的可視化;
第三,友好的用戶(hù)界面及接近數(shù)學(xué)表達(dá)式的自然化語(yǔ)言,使學(xué)者易于學(xué)習(xí)和掌握;
第四,功能豐富的應(yīng)用工具箱(如信號(hào)處理工具箱、通信工具箱等),為用戶(hù)提供了大量方便使用的處理工具。
它的產(chǎn)品族不僅能用于做數(shù)值分析、數(shù)值和符號(hào)計(jì)算、工程與科學(xué)繪圖等工作,還覆蓋數(shù)值圖像處理技術(shù)、通訊系統(tǒng)設(shè)計(jì)與仿真、財(cái)務(wù)與金融工程等等。
Go
此外,惹人注意的還有Go。
但查看Hired網(wǎng)站發(fā)布的《2018年軟件工程師現(xiàn)狀》報(bào)告會(huì)發(fā)現(xiàn),全球需求量最多的不是Python,不是Java,不是C/C++,更不是PHP,而是它-Golang。
R
R 語(yǔ)言為何能上升?
R用于統(tǒng)計(jì)分析和繪圖的語(yǔ)言及操作環(huán)境,以81.5%擠進(jìn)前五。
近幾年因不斷增長(zhǎng)的海量數(shù)據(jù),使得R語(yǔ)言長(zhǎng)期保持良好的受歡迎程度。
雖說(shuō) R 語(yǔ)言常年被 Python 打壓,可仍然比去年提升了兩名,這要得益于它的幾個(gè)特性:
命令模式。Python 雖然也支持命令模式,但是相對(duì)來(lái)說(shuō),更偏向于流程控制語(yǔ)句。R 本身基本上不需要用到流程控制(當(dāng)然,它也支持流程控制)。
交互性。這是命令模式的一個(gè)特點(diǎn),敲回車(chē),出結(jié)果,但是又不像 SPSS那種用鼠標(biāo)扎針的交互方式。
統(tǒng)計(jì)學(xué)特性。這是 R 語(yǔ)言最大的特點(diǎn),比如:
賦值的時(shí)候,不用等號(hào)(=),用的是指向(<-),帶來(lái)的問(wèn)題就是要寫(xiě) a < -5 這種語(yǔ)句,就需要 a < (-5) 這樣寫(xiě)。
其它
除了默認(rèn)的權(quán)重產(chǎn)生的排行榜之外,IEEE Spectrum 還提供了用戶(hù)增速趨勢(shì)、就業(yè)需求、開(kāi)源、自定義這四個(gè)選項(xiàng),開(kāi)發(fā)者可根據(jù)自身需求或興趣查看排行榜。
用戶(hù)增速編程語(yǔ)言排行榜:JavaScript上升
隨著 Nodejs 的大面積使用,前端開(kāi)發(fā)后端化是一個(gè)較為明顯的趨勢(shì),JavaScript 正在從傳統(tǒng)的前端開(kāi)發(fā)走向后端開(kāi)發(fā),這對(duì) Java 語(yǔ)言的應(yīng)用也會(huì)造成一定的影響。
目前 JavaScript 的開(kāi)源項(xiàng)目非常多,這在一定程度上也促進(jìn)了 JavaScript 的應(yīng)用和發(fā)展,所以對(duì)于 Java 程序員來(lái)說(shuō),未來(lái)掌握J(rèn)avaScript 也是有一定必要的。
注:每個(gè)開(kāi)發(fā)者都需要相對(duì)流行的網(wǎng)站統(tǒng)計(jì)數(shù)據(jù),與其他的語(yǔ)言排行榜不同,IEEE Spectrum 可以讓開(kāi)發(fā)者自己選擇參數(shù)組合時(shí)的權(quán)重,得到多樣的排序結(jié)果。