發(fā)布時間:2022-01-07 09:31:01  訪問次數(shù):521
發(fā)布人:優(yōu)洱士電腦維修
 
中科院軟件所在 Python 程序的構(gòu)建依賴分析方面取得進展:幫助開發(fā)人員提高代碼復(fù)用效率
據(jù)中國科學(xué)院網(wǎng)站,近日,中國科學(xué)院軟件研究所軟件工程技術(shù)研究開發(fā)中心在 Python 程序構(gòu)建中的依賴分析推斷方面取得研究進展,提出知識驅(qū)動的 Python 程序依賴推斷方法及工具,幫助開發(fā)人員提高代碼復(fù)用效率,減少依賴缺失和依賴版本錯誤導(dǎo)致的 Python 程序構(gòu)建和運行錯誤,為提升開發(fā)運維一體化中的應(yīng)用構(gòu)建自動化能力起到支撐作用。
據(jù)介紹,Python 語言廣泛應(yīng)用于科學(xué)計算等,開發(fā)者常常通過代碼復(fù)用提高開發(fā)效率。但 Python 程序運行環(huán)境復(fù)雜,依賴于 Python 包、系統(tǒng)庫和特定版本的 Python 解釋器。缺少程序依賴或者依賴版本不兼容,會導(dǎo)致程序構(gòu)建失敗和運行錯誤。
針對該問題,研究提出一種知識驅(qū)動的 Python 程序依賴推斷方法,包括知識圖譜構(gòu)建和程序依賴推斷兩個階段。在知識圖譜構(gòu)建階段,該方法收集大量多源異構(gòu)數(shù)據(jù),進行知識的抽取和融合,構(gòu)建 Python 領(lǐng)域知識圖譜。在程序依賴推斷階段,該方法基于領(lǐng)域知識圖譜,通過程序分析和約束求解方法推斷目標 Python 程序的多層次依賴。
基于上述方法,該研究開發(fā)了 PyEGo:知識驅(qū)動的 Python 程序依賴推斷工具。實驗結(jié)果顯示,PyEGo 工具的依賴推斷成功率是已有方法的 1.5—4.5 倍,極大提升了程序構(gòu)建的正確率和執(zhí)行效率。