示意圖,與新聞事件無關。

圖片來源: 

GitHub

微軟研究院、美國東北大學、捷克技術大學及美國加州大學歐文分校的8名研究人員在近日發表的研究報告中指出,GitHub上所代管的檔案中,只有17.6%是獨特的,有70%的檔案是複製品,其他則是稍有變動或無關緊要的檔案。

這群研究人員原本是要調查各種複製品的粒度,以協助其他研究挑選GitHub上的隨機樣本,他們分析了GitHub的450萬個非分叉專案,涵蓋逾4.82億個檔案,卻意外發現當中只有8500萬個獨特檔案,而讓研究方向轉了個彎。

該研究排除了各種分叉專案,因為這些專案原本就會含有複製內容,而不同語言的複製比例則各不相同,例如JavaScript生態體系的複製檔案比例高達94%,C++為73%,Python為71%,而Java則是40%。

不過,上述結果包含了許多無關緊要的複製內容,例如大小為0的空白檔案就被重複建立了220萬次,還有一些重複檔案只鍵入了一個空行。即便扣除這些內容,上述語言的複製檔案比例依舊高達93%、73%、69%與40%。

開源碼觀察家Adrian Colyer認為,從該報告可看出GitHub有許多專案雖未採用分叉機制,卻仍然複製了大量的檔案,且隨著現代的軟體專案多半仰賴其他開源專案,再加上許多自動產生的程式碼,在未來專案中由開發人員自行撰寫的程式很可能都只佔專案的很小一部份。


Advertisement

更多 iThome相關內容