摘要:本文根據(jù)Stack Overflow流量分析了Python及其他一些編程語(yǔ)言的發(fā)展情況,同時(shí)也對(duì)高收入國(guó)家與非高收入國(guó)家的情況進(jìn)行了對(duì)比。以下是譯文。
我們最近的研究表明,富裕國(guó)家(世界銀行定義為高收入國(guó)家)喜歡研究的技術(shù)與其他國(guó)家的不同。其中,我們看到最大的差異是Python語(yǔ)言。當(dāng)我們關(guān)注高收入國(guó)家的時(shí)候,甚至可以看到Python的增長(zhǎng)速度甚至比Stack Overflow Trends或者其他一些全球軟件開發(fā)排名顯示的還要快。
在這篇文章中,我們將探討過(guò)去五年中Python語(yǔ)言不尋常的增長(zhǎng)速度,正如在高收入國(guó)家的Stack Overflow流量中所示的那樣。 “增長(zhǎng)最快”一詞可能很難精確定義,但是我們認(rèn)為Python確實(shí)是增長(zhǎng)最快的主流編程語(yǔ)言。
本文提到的大部分?jǐn)?shù)字都來(lái)自高收入國(guó)家,比如美國(guó)、英國(guó)、德國(guó)、加拿大和其他類似的國(guó)家,他們加起來(lái)占了Stack Overflow 64%的流量。其他一些國(guó)家,如印度、巴西、俄羅斯和中國(guó),也為全球軟件開發(fā)生態(tài)系統(tǒng)做出了巨大的貢獻(xiàn)。盡管這些國(guó)家的Python也在增長(zhǎng),但本文幾乎不涉及這些經(jīng)濟(jì)體。
需要強(qiáng)調(diào)的是,使用某種語(yǔ)言的用戶數(shù)并不能用來(lái)衡量該語(yǔ)言的質(zhì)量:我們現(xiàn)在正在講的是開發(fā)人員使用的編程語(yǔ)言,而不是處方。
Python在高收入國(guó)家的增長(zhǎng)情況
你可以在Stack Overflow Trends上看到,Python在過(guò)去幾年里一直在迅速增長(zhǎng)。但是對(duì)于這篇文章,我們將重點(diǎn)關(guān)注高收入國(guó)家,并且分析的是Stack Overflow上問(wèn)題的訪問(wèn)情況,而不是用戶提的問(wèn)題。
有關(guān)Stack Overflow問(wèn)題視圖的數(shù)據(jù)可以追溯到2011年底,在這段時(shí)間內(nèi),我們可以看一下Python相對(duì)于其他五種主流編程語(yǔ)言的增長(zhǎng)情況。這是目前高收入國(guó)家中Stack Overflow訪問(wèn)量前十的標(biāo)簽中的六個(gè);另外還有這四個(gè)沒(méi)包括在內(nèi),分別是CSS、HTML、Android和JQuery。
2017年6月,Python第一次成為高收入國(guó)家Stack Overflow訪問(wèn)量最大的標(biāo)簽。它在美國(guó)和英國(guó)是訪問(wèn)量最大的標(biāo)簽,在大部分其他高收入國(guó)家中也是排在前兩名(另外一個(gè)要么是Java要么是JavaScript)。這尤其令人印象深刻,因?yàn)樵?012年,Python的訪問(wèn)量小于其他五種語(yǔ)言,而到現(xiàn)在其訪問(wèn)量已經(jīng)增長(zhǎng)了2.5倍。
產(chǎn)生這種現(xiàn)象的部分原因是Java流量的季節(jié)性因素。由于Java是本科重點(diǎn)課程,所以它的流量會(huì)在秋季和春季上升,而在夏季下降。但是它會(huì)在年底再次趕上Python嗎?我們可以嘗試使用名為“STL”的模型來(lái)預(yù)測(cè)未來(lái)兩年的增長(zhǎng)情況,這個(gè)模型能將增長(zhǎng)情況與季節(jié)性趨勢(shì)相結(jié)合,從而預(yù)測(cè)未來(lái)的值。
根據(jù)這個(gè)模式的預(yù)測(cè),Python可能會(huì)在今年秋天保持領(lǐng)先地位或被Java反超,但到了2018年,Python肯定會(huì)成為最受歡迎的標(biāo)簽。STL還暗示JavaScript和Java在高收入國(guó)家中的流量將保持相似的水平,就跟最近兩年的情況差不多。
從整體上來(lái)看,有哪些標(biāo)簽增長(zhǎng)得最快?
以上我們只看了六種主流語(yǔ)言,那么目前在高收入國(guó)家中還有哪些目前增長(zhǎng)最快的技術(shù)呢?
我們用2017年和2016年的流量占比來(lái)定義增長(zhǎng)率。在這個(gè)分析中,我們只考慮編程語(yǔ)言(比如Java和Python)和平臺(tái)(比如iOS、Android、Windows和Linux),不包括類似Angular的框架和類似TensorFlow的庫(kù)。
由于這個(gè)漫畫中描述的“增長(zhǎng)最快”存在問(wèn)題,因此,我們使用平均差異圖來(lái)比較各個(gè)語(yǔ)言的增長(zhǎng)率與整體平均增長(zhǎng)率。
Python憑借著27%的年增長(zhǎng)率在所有標(biāo)簽中獨(dú)占鰲頭,它既是流量最大也是增長(zhǎng)最快的標(biāo)簽。擁有類似增長(zhǎng)率的第二大標(biāo)簽是R語(yǔ)言。我們可以看到,其他大多數(shù)大標(biāo)簽的流量在高收入國(guó)家都保持穩(wěn)定,而Android、iOS和PHP的訪問(wèn)量則略有下降。(我們?cè)谥耙黄狥lash之死的帖子中研究了一些流量減少的標(biāo)簽,如Objective-C、Perl和Ruby)。我們還注意到,在函數(shù)式編程語(yǔ)言中,Scala是流量最大并且增長(zhǎng)非常迅速的語(yǔ)言,F(xiàn)#和Clojure則較小并且還在不斷下降,而Haskell則位于它們之間并保持著穩(wěn)定。
在上圖中有一個(gè)重要的東西被遺漏了:TypeScript的流量去年竟然增長(zhǎng)了142%,這足以讓我們對(duì)它進(jìn)行單獨(dú)處理,以避免超過(guò)現(xiàn)有的范圍。你還可以看到,其他一些較小語(yǔ)言(例如R、Go和Rust)的增長(zhǎng)速度與Python差不多或更快,而且也有許多標(biāo)簽,例如Swift和Scala,它們的增長(zhǎng)情況也很驚人。與Python相比,他們的流量變化情況怎么樣呢?
像R和Swift這樣的語(yǔ)言的發(fā)展情況確實(shí)很驚人,而TypeScript在更短的時(shí)間內(nèi)表現(xiàn)出了更快速的擴(kuò)張。如圖所示,當(dāng)標(biāo)簽一開始相對(duì)較小時(shí),則后期越容易出現(xiàn)較快地增長(zhǎng)。
請(qǐng)注意,我們的意思并不是說(shuō)這些語(yǔ)言可以與Python“抗衡”。相反,我們正在解釋的是為什么要把它們單獨(dú)拿出來(lái)分析,這些都是較低流量的標(biāo)簽。Python有著一個(gè)與眾不同的情況,它是Stack Overflow中最受歡迎的標(biāo)簽之一,也是增長(zhǎng)最快的一個(gè)。
其他地區(qū)的情況
到目前為止,我們一直都在分析高收入國(guó)家的發(fā)展趨勢(shì)。那么,在像印度、巴西、俄羅斯、中國(guó)等其他一些國(guó)家中,Python的增長(zhǎng)情況如何呢?
它依然是增長(zhǎng)最快的編程語(yǔ)言。
在非高收入國(guó)家中,Python仍然是增長(zhǎng)最快的主流編程語(yǔ)言;它只是最開始的水平比較低,并且是在兩年后才開始增長(zhǎng)(從2014年開始,而不是2012年)。事實(shí)上,非高收入國(guó)家的Python同比增長(zhǎng)率略高于高收入國(guó)家。
本文中有關(guān)高收入國(guó)家標(biāo)簽流量增減的許多結(jié)論也都適用于其他地區(qū),并且這兩者的增長(zhǎng)率存在著0.979的相關(guān)性。在某些情況下,你會(huì)看到類似于Python的“滯后”現(xiàn)象,即某個(gè)技術(shù)在高收入國(guó)家的接受度發(fā)展水平比其他地區(qū)要早一到兩年。
下一步工作
我們不希望挑起所謂的“語(yǔ)言之戰(zhàn)”。一種語(yǔ)言的用戶數(shù)量并不代表著它的質(zhì)量,而且肯定無(wú)法告訴你哪種語(yǔ)言更適合某種特定情況。不過(guò),考慮到這個(gè)觀點(diǎn),我們認(rèn)為有必要了解一下有哪些語(yǔ)言建起了開發(fā)者生態(tài)系統(tǒng),以及生態(tài)系統(tǒng)當(dāng)前的發(fā)展情況。
-
嵌入式
+關(guān)注
關(guān)注
5083文章
19131瀏覽量
305544 -
編程語(yǔ)言
+關(guān)注
關(guān)注
10文章
1945瀏覽量
34757 -
python
+關(guān)注
關(guān)注
56文章
4797瀏覽量
84729
原文標(biāo)題:Python是高收入國(guó)家增長(zhǎng)最快的語(yǔ)言,沒(méi)有之一!
文章出處:【微信號(hào):eet-china,微信公眾號(hào):電子工程專輯】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論