IT之家 1 月 7 日消息,據(jù)中國(guó)科學(xué)院網(wǎng)站,近日,中國(guó)科學(xué)院軟件研究所軟件工程技術(shù)研究開(kāi)發(fā)中心在 Python 程序構(gòu)建中的依賴分析推斷方面取得研究進(jìn)展,提出知識(shí)驅(qū)動(dòng)的 Python 程序依賴推斷方法及工具,幫助開(kāi)發(fā)人員提高代碼復(fù)用效率,減少依賴缺失和依賴版本錯(cuò)誤導(dǎo)致的 Python 程序構(gòu)建和運(yùn)行錯(cuò)誤,為提升開(kāi)發(fā)運(yùn)維一體化中的應(yīng)用構(gòu)建自動(dòng)化能力起到支撐作用。
據(jù)介紹,Python 語(yǔ)言廣泛應(yīng)用于科學(xué)計(jì)算等,開(kāi)發(fā)者常常通過(guò)代碼復(fù)用提高開(kāi)發(fā)效率。但 Python 程序運(yùn)行環(huán)境復(fù)雜,依賴于 Python 包、系統(tǒng)庫(kù)和特定版本的 Python 解釋器。缺少程序依賴或者依賴版本不兼容,會(huì)導(dǎo)致程序構(gòu)建失敗和運(yùn)行錯(cuò)誤。
針對(duì)該問(wèn)題,研究提出一種知識(shí)驅(qū)動(dòng)的 Python 程序依賴推斷方法,包括知識(shí)圖譜構(gòu)建和程序依賴推斷兩個(gè)階段。在知識(shí)圖譜構(gòu)建階段,該方法收集大量多源異構(gòu)數(shù)據(jù),進(jìn)行知識(shí)的抽取和融合,構(gòu)建 Python 領(lǐng)域知識(shí)圖譜。在程序依賴推斷階段,該方法基于領(lǐng)域知識(shí)圖譜,通過(guò)程序分析和約束求解方法推斷目標(biāo) Python 程序的多層次依賴。
IT之家了解到,基于上述方法,該研究開(kāi)發(fā)了 PyEGo:知識(shí)驅(qū)動(dòng)的 Python 程序依賴推斷工具。實(shí)驗(yàn)結(jié)果顯示,PyEGo 工具的依賴推斷成功率是已有方法的 1.5—4.5 倍,極大提升了程序構(gòu)建的正確率和執(zhí)行效率。
▲ Python 程序依賴分析方法示意圖
廣告聲明:文內(nèi)含有的對(duì)外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時(shí)間,結(jié)果僅供參考,IT之家所有文章均包含本聲明。