編程語言衆多且對整個開發生態的影響深遠,對於程序員而言,選編程語言如同選擇行業,而對企業而言,選擇編程語言就如同選擇一個生態環境,有人說“站在風口,豬都能飛起來”,反之,依然,因此,瞭解編程語言的實際市場狀況並做出正確的選擇非常重要。近期做了多篇關於編程語言的文章並多次用到了TIOBE編程語言排行榜,但有一次一個朋友反饋說TIOBE排行指標中使用“<language> programming”進行搜索統計感覺不具有代表性,作爲編程近20年的程序員他從沒這麼搜索。於是用百度搜索對“Java 編程”或者“Java Programming”進行測試,結果發現不如“java”更具有代表性,也許這與國內或者中文搜索習慣不同。爲了更好地瞭解編程語言在國內或中文區的真實情況,現利用百度網名實際搜索數據對TIOBE榜單的前50名進行統計分析。
數據來源爲百度提供的從2011年1月1日起至2020年2月19日近十年的網名實際搜索量,統計指標結合中文網友搜索習慣,將編程語言自身關鍵字、再加“語言、編程、開發、教程”等關鍵字組合進行綜合統計。統計結果發現,前4名結果完全一致,其他大多數都相差不大或排名一致的,差異較大的有幾項值得關注,其中排名上升的主要有:MatLab在搜索量中排第6位在TIOBE排行第16位,Julia比較意外在搜索中排第第11位在TIOBE中排第42位,LabView在搜索中排第16位在TIOBE中排第40位,typescript搜索中排第18位TIOBE中排第46位,Lua搜索中排第29位TIOBE中排名第36位,Ada搜索中排第22位TIOBE中排第39位,Pascal搜索中排名第24位TIOBE中排在50名外,還有其PowerShell等;排名下降的主要有:D語言在TIOBE中排名第14位,但是在百度搜索結果中很少有D語言相關的且百度搜索也沒有D語言搜索量的更多收錄信息,groovy在搜索中排第28位在TIOBE中排第16位。總體看上升和下降的結果還是很符合我國內現狀的,感覺實際搜索量的結果似乎更能反映編程語言在國內的活躍度,當然查看TIOBE榜對技術選型也是很有參考價值的,建議做編程語言選擇時結合兩者一起評估。
搜索排行 | 關鍵詞 | 整體日均搜索量 | 移動日均搜索量 | TIOBE排行 | 名次差異 |
1 | java | 13401 | 3565 | 1 | 0 |
2 | c | 12284 | 6890 | 2 | 0 |
3 | python | 9693 | 2774 | 3 | 0 |
4 | c++ | 9643 | 5770 | 4 | 0 |
5 | php | 5478 | 1157 | 8 | 3 |
6 | matlab | 4462 | 1095 | 16 | 10 |
7 | vb | 3817 | 1340 | 6 | -1 |
8 | go | 3751 | 1415 | 11 | 3 |
9 | javascript | 3499 | 988 | 7 | -2 |
10 | sql | 3312 | 812 | 9 | -1 |
11 | julia | 2633 | 1086 | 42 | 31 |
12 | c# | 2369 | 619 | 5 | -7 |
13 | swift | 2002 | 800 | 10 | -3 |
14 | ruby | 1617 | 600 | 15 | 1 |
15 | 彙編 | 1458 | 551 | 12 | -3 |
16 | labview | 1228 | 322 | 40 | 24 |
17 | delphi | 1212 | 293 | 18 | 1 |
18 | typescript | 1008 | 200 | 46 | 28 |
19 | lua | 991 | 239 | 36 | 17 |
20 | perl | 975 | 217 | 19 | -1 |
21 | r | 895 | 287 | 13 | -8 |
22 | ada | 890 | 464 | 39 | 17 |
23 | scheme | 852 | 334 | 44 | 21 |
24 | pascal | 850 | 284 | 未上榜 | #N/A |
25 | scala | 726 | 147 | 25 | 0 |
26 | objective-c | 550 | 133 | 20 | -6 |
27 | powershell | 533 | 108 | 38 | 11 |
28 | groovy | 523 | 114 | 12 | -16 |
29 | kotlin | 519 | 134 | 18 | -11 |
30 | erlang | 482 | 100 | 41 | 11 |
31 | fortran | 473 | 146 | 37 | 6 |
32 | lisp | 396 | 126 | 32 | 0 |
33 | abap | 374 | 105 | 31 | -2 |
34 | postscript | 290 | 98 | 49 | 15 |
35 | cobol | 268 | 97 | 30 | -5 |
36 | haskell | 265 | 84 | 45 | 9 |
37 | actionscript | 264 | 70 | 50 | 13 |
38 | f# | 198 | 66 | 28 | -10 |
39 | logo | 180 | 67 | 34 | -5 |
40 | D | 沒有數據收錄 | 0 | 14 | -26 |
41 | rpg | 沒有數據收錄 | 0 | 35 | -6 |
42 | ml | 沒有數據收錄 | 0 | 43 | 1 |
43 | OpenEdge ABL | 沒有數據收錄 | 0 | 47 | 4 |
44 | livecode | 沒有數據收錄 | 0 | 48 | 4 |