2016-2022 All Rights Reserved.平安財經網.復制必究 聯系QQ 備案號:
本站除標明“本站原創”外所有信息均轉載自互聯網 版權歸原作者所有。
郵箱:toplearningteam#gmail.com (請將#換成@)
北卡羅來納州立大學的一組研究人員最近對GitHub上共享的Python代碼片段的可執行狀態進行了實證分析。他們的研究預先發布在arXiv上,還提供了Gistable,這是一個新的GitHub gist系統可執行Python代碼片段數據庫,可以在軟件工程領域實現可重復的研究。

每天,全球的軟件開發人員在線創建和共享代碼,以演示和概述新的編程概念。GitHub是最大的在線平臺之一,開發人員可以在其上共享他們的代碼片段并協作開發軟件。目前,它包含超過300,000個Python片段和超過450萬個各種編程語言的要點。
雖然在線發布的代碼片段非常有用,但有時它們不能直接由其他人執行。這可能是由于代碼中的解析錯誤或在包含未滿足的依賴項的環境中執行代碼段的問題。
為了更好地了解GitHub的gist系統上托管的代碼片段實際上是可執行的,北卡羅來納州立大學的研究人員對該平臺上托管的公共Python腳本的可執行性進行了全面評估。他們的研究旨在確定代碼片段執行的常見問題,這可為進一步研究自動化軟件配置管理提供有價值的見解。
在他們的研究中,研究人員還提出了Gistable,一個基于GitHub的gist系統構建的數據庫和可擴展框架。Gistable包含10,259個Python代碼片段,其中大約5,000個帶有Dockerfile,用于配置和執行它們而不會導致導入錯誤。
“我們在Gistable上的工作是作為一個涉及應用程序環境自動配置的大型項目的一部分而推動的,”執行該研究的研究人員Eric Horton告訴Tech Xplore。“鑒于代碼庫,例如在Gistable中研究的代碼片段,我們希望找到一個可以為他們構建足夠執行環境的流程,而無需開發人員的輸入。為了做到這一點,我們首先必須退一步回答幾個問題。首先,這是一個常見的用例嗎?我們需要為現有應用程序需要某種非平凡配置的頻率建立基線。其次,當不可執行時,需要什么類型的配置才能執行?“
在他們的研究中,研究人員發現,75.6%的分析Python要點需要大量配置來克服諸如缺少依賴性,配置文件,依賴特定操作系統或其他環境配置挑戰等問題。此外,在嘗試解決配置錯誤時,開發人員對資源名稱所做的假設在不到一半的時間內被發現是正確的。
“我們發現大約30%的樣本屬于'難以配置'類別,最常見的配置難度是依賴于外部庫,”Horton解釋說。“我們在不久的將來的研究將集中在尋找和安裝這些庫的技術上。之后,我們希望解決作為Gistable的一部分發現的其他常見配置困難。”
總體而言,配置不充分的環境是阻止Python代碼片段可執行的主要因素。在某些情況下,可以自動恢復正確的應用程序環境配置,而其他配置則需要進一步的干預。未來,研究人員計劃研究策略,以始終如一地執行有效的環境配置。
“我認為這項研究最有意義的成就是我們對開發人員如何手動執行配置的調查,”Horton說。“參與者的回復不僅證實這在很多情況下是一個難題,而且還幫助我們對可能使配置變得困難的事情進行分類。這非常有用,因為它為我們提供了一個具體的未來研究項目清單“。
2016-2022 All Rights Reserved.平安財經網.復制必究 聯系QQ 備案號:
本站除標明“本站原創”外所有信息均轉載自互聯網 版權歸原作者所有。
郵箱:toplearningteam#gmail.com (請將#換成@)