PHP是宇宙第一編程語(yǔ)言,這些數(shù)據(jù)到底準(zhǔn)不準(zhǔn)確?
2021-08-17
作為程序員,我更關(guān)注編程語(yǔ)言的流行。一方面,編程語(yǔ)言的流行決定了它的市場(chǎng)有多大,另一方面也關(guān)系到行業(yè)內(nèi)程序員的選擇機(jī)會(huì)。
我們總是聽(tīng)說(shuō)某個(gè)編程語(yǔ)言排名第一,那么這個(gè)數(shù)據(jù)準(zhǔn)確嗎?
1.PHP 是宇宙第一嗎?
例如,我們經(jīng)常聽(tīng)到一句話:PHP 是宇宙中排名第一的編程語(yǔ)言。
關(guān)于這個(gè)問(wèn)題,我們可以很容易地在排名上進(jìn)行驗(yàn)證。上圖是2002年至2019年編程語(yǔ)言Top 10的排名。
可以清楚地看到,雖然PHP是一種比較流行的編程語(yǔ)言,但它從來(lái)沒(méi)有成為其歷史上的第一個(gè)。 PHP巔峰時(shí)期,排名只能排在第四位三、。
那么這些數(shù)據(jù)從何而來(lái),又是如何計(jì)算的?
相信每個(gè)程序員都應(yīng)該聽(tīng)說(shuō)過(guò)這個(gè)名字,因?yàn)閹缀趺總€(gè)月都有媒體報(bào)道當(dāng)月的編程語(yǔ)言排行榜,所以它成為了編程語(yǔ)言排行榜領(lǐng)域最權(quán)威的機(jī)構(gòu)。
所以我一直很好奇,這是一個(gè)什么樣的組織?他們?nèi)绾斡?jì)算編程語(yǔ)言排名?讓我慢慢說(shuō)。
2. 公司介紹
公司由一家瑞士公司和一些獨(dú)立投資者于2000年10月1日成立。是“The Of”的縮寫編程語(yǔ)言排行 2016年6月,公司主要專注于軟件質(zhì)量的評(píng)估。
由公司推出和維護(hù)。該指數(shù)以排名列表的形式提供編程語(yǔ)言,每月更新一次,以表明編程語(yǔ)言的流行程度。
排名是根據(jù)互聯(lián)網(wǎng)上有經(jīng)驗(yàn)的程序員、課程和第三方供應(yīng)商的數(shù)量編程語(yǔ)言排行 2016年6月,并使用搜索引擎(如必應(yīng)、!)和,計(jì)算排名數(shù)據(jù),僅反映一個(gè)程序的受歡迎程度語(yǔ)言程度不代表一種編程語(yǔ)言的好壞,或者一種語(yǔ)言寫了多少代碼。
該指標(biāo)可以用來(lái)考察開(kāi)發(fā)者的編程能力是否能夠跟上潮流,或者是否需要進(jìn)行戰(zhàn)略性的改變,以及應(yīng)該及時(shí)掌握什么編程語(yǔ)言。據(jù)觀察,該指數(shù)雖然反映的不是目前最流行或使用最廣泛的語(yǔ)言,但對(duì)世界各國(guó)語(yǔ)言的發(fā)展仍有重要的參考意義。
下圖為10月份最新的20種編程語(yǔ)言:
列表地址:
3.編程語(yǔ)言排名的評(píng)價(jià)方法
該指數(shù)的評(píng)價(jià)是通過(guò)統(tǒng)計(jì)該編程語(yǔ)言在主流搜索引擎上被搜索過(guò)的次數(shù)來(lái)計(jì)算的。搜索包括對(duì)搜索引擎、新聞組和博客的搜索。主流搜索引擎由網(wǎng)站排名決定。
一般來(lái)說(shuō),只有符合條件的搜索引擎和符合條件的編程語(yǔ)言才會(huì)被納入索引。
下面有25個(gè)搜索引擎來(lái)計(jì)算索引。所選搜索引擎是符合以下條件的前 25 個(gè)網(wǎng)站:
1.本站門戶頁(yè)面包含搜索工具
2. 查詢本網(wǎng)站的結(jié)果包含頁(yè)面點(diǎn)擊次數(shù)的指示
3. 應(yīng)該是帶有清晰標(biāo)簽的 HTML 格式
4. 搜索引擎的特殊字符應(yīng)該正確編碼
5.搜索引擎應(yīng)該至少返回 1 個(gè)查詢
6. 查詢網(wǎng)站的結(jié)果不能包含太多的離群值
7.porn 網(wǎng)站不包括在內(nèi)
根據(jù)以上標(biāo)準(zhǔn),符合條件的搜索引擎如下:
可以看出,大部分的搜索引擎都來(lái)自谷歌,這也從另一個(gè)側(cè)面反映了谷歌的國(guó)際化程度。國(guó)內(nèi)符合條件的主要有百度、Csdn、搜狗等。這一結(jié)果凸顯了百度、CSDN和搜狗的國(guó)際影響力。
也可以說(shuō),以上25個(gè)網(wǎng)站的月度搜索結(jié)果決定了當(dāng)月編程語(yǔ)言的排名。
指數(shù)計(jì)算公式
如果用"hits(PL#i,SE)"表示編程語(yǔ)言PL在搜索引擎SE上索引排名i的搜索次數(shù),n表示搜索引擎的次數(shù),則PL排名前50名編程語(yǔ)言中評(píng)價(jià)的計(jì)算公式為
((hits(PL#i,SE1)/hits(PL#1) +… + hits(PL#50)) +… + (hits(PL#i,SEn)/hits( PL#1) +... + 點(diǎn)擊數(shù)(PL#50)))/n
4. 3個(gè)必要條件
為索引選擇的編程語(yǔ)言必須滿足 3 個(gè)先決條件:
①它在維基百科上有自己的詞條,維基百科明確說(shuō)明它是一種編程語(yǔ)言,這也是為什么(Ruby on)、、、、、ASP和AJAX沒(méi)有被選入索引排名的原因。
②要有圖靈完備性(),所以不能包含XML和HTML。此約束對(duì)于數(shù)據(jù)查詢語(yǔ)言 SQL 也有效。例如,您不能使用 SQL 編寫無(wú)限循環(huán)。另一方面,PL/SQL和SQL擴(kuò)展的-SQL屬于編程語(yǔ)言的范疇。
③+” ”格式的關(guān)鍵詞至少命中5000次。
另外,相似的編程語(yǔ)言會(huì)被分配到一起,但到目前為止,只有那些搜索命中數(shù)最高的組合在一起才會(huì)被計(jì)算在內(nèi)。后面會(huì)考慮這些分組編程語(yǔ)言的數(shù)學(xué)問(wèn)題。設(shè)置為搜索中的命中數(shù)。
以下是多種編程語(yǔ)言分組的規(guī)則條件:
①如果一種語(yǔ)言有自己的維基百科詞條,它不會(huì)與其他語(yǔ)言歸為一組。
②如果語(yǔ)言 A 被自動(dòng)重定向到另一個(gè)維基百科條目 B,那么 A 將與 B 分組。
③如果語(yǔ)言 A 沒(méi)有單獨(dú)的維基百科條目,但作為另一個(gè)維基百科條目 B 的一部分被提及,則 A 將與 B 分組。
5.年度編程語(yǔ)言
每年都會(huì)選出一種年度編程語(yǔ)言,說(shuō)明該語(yǔ)言在年度排名中上升幅度最大。比如它在 2018 年被選為年度編程語(yǔ)言,從排行榜上也可以看出,它在 2018 年直接飆升至第三名。
過(guò)去幾年的年度編程語(yǔ)言如下:
-SQL
-C
-C
++
6.last
它只反映某種編程語(yǔ)言的流行程度,并不代表一種編程語(yǔ)言的好壞。所以如果你使用的編程語(yǔ)言沒(méi)有排在第一位,也不要太沮喪,這并不代表所使用的編程語(yǔ)言的重要性。
但是關(guān)注編程語(yǔ)言排名也有一定的指導(dǎo)意義。作為編程領(lǐng)域唯一的權(quán)威排名,為我們選擇編程語(yǔ)言提供了參考。畢竟,沒(méi)有人愿意在沒(méi)有市場(chǎng)的情況下學(xué)習(xí)編程。語(yǔ)言。
編程語(yǔ)言的流行也是市場(chǎng)的反應(yīng)。比如2015年,Java就因?yàn)楸ㄊ皆鲩L(zhǎng)成為年度編程語(yǔ)言。
對(duì)于想從事編程工作的新手來(lái)說(shuō),最好選擇排名比較靠前的編程語(yǔ)言,這樣學(xué)習(xí)資料和工作機(jī)會(huì)相對(duì)多一些,未來(lái)發(fā)展的機(jī)會(huì)也相對(duì)多一些。一點(diǎn)點(diǎn)。