GitHub上的編程語言:JavaScript領銜Java次之
最近, Linguist項目 統計了代碼托管網站GitHub上各類編程語言的熱度。下圖展示了自2008年以來各編程語言的排名狀況及它們的相對熱度。
從上圖中可以看出,Perl已經不再流行,C#開源之后流行度迅速上升,JavaScript高居榜首,Java則一路攀升至第二名,“最好的語言”PHP沒有變化。 GitHub的Ben Balter說 ,十年前Java是一個閉源開發的語言,銀行和企業用來開發應用;如今Java是構建開源軟件的最流行語言之一。Balter認為,Java的崛起是 Google選擇用它構建Android的結果。作為當今智能手機最廣泛使用的操作系統Android的興起使得Java開發者增多,同時企業里對版本控 制平臺的需求大大增加,這些因素都可能促成了現在這樣的結果。
這個排名是基于GitHub上公共和私有庫使用的語言及其創建時的年份統計的,該排名并沒有統計分支中的情況。由于沒有統計每一個倉庫中的分支, 統計得到的數據并不是各種語言的使用總量。另外,這種方法沒有對統計對象進行加權,比如說,GitHub上有相當多不同語言的Hello World項目倉庫,它們之所以被創建,僅僅是因為使用者作為新手學習時進行的嘗試。如果不把這一類意義不大的倉庫剔除,編程語言使用情況的統計結果就會 出現偏差。
如果采用加權法對統計進行改進的話,大型項目的權重需要設置得比小型項目的權重更大。這是因為,小型項目(如batch files、css、html、examples、tests等)往往約定俗成地使用某一種特定的語言,然而對于大型項目,卻有多種語言可以選擇。至于實 現項目時到底選擇哪一種語言,那么就要看程序員的考慮和喜好了,這也才是編程語言使用率統計的重點所在。新創建的(大型)項目相比于過往創建的(大型)項 目,其權重也可以更大。將項目的代碼行數和創建日期作為加權因子同時在統計中考慮,能夠更好地體現各語言的使用率趨勢。