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

麻省理工學院(MIT)的CSAIL實驗室在今年9月舉行的計算機協會研討會中發表了 CodeCarbonCopy系統,它能夠協助軟體開發人員將軟體中的一段程式碼自動移植到另一個軟體,將可大幅簡化程式撰寫流程。

透過CodeCarbonCopy,開發人員可先選擇A軟體的一段程式碼,再選擇B軟體的插入點,系統就能自動進行必要的變更,如改變參數名稱,以把程式碼妥善地植入B軟體中。此外,CodeCarbonCopy還能夠轉換A軟體與B軟體的資料表現方法,以讓程式碼得以無縫轉移。

該研究的第一作者Stelios Sidiroglou-Douskos表示,CodeCarbonCopy可說是軟體工程的聖杯之一,這是讓人類遠離開發周期,邁入自動化的另一步,他們的想法是,也許大家早就寫好了軟體所需要的大部份程式,現在只需要再利用。

在移植程式碼時,CodeCarbonCopy還能執行靜態分析,移除在A軟體中必要但在B軟體中毫無作用的功能。

研究人員已於6款開放源碼影像處理軟體中進行8次的程式碼轉移測試,其中有7次是成功的。這些軟體為MPlayer、VLC、mtPaint、cwebp、bmp2tiff與ViewNIOR。

Cornell Tech電腦科學教授Vitaly Shmatikov指出,程式碼移植可能是許多軟體出現問題的根源,也許只是一個小差錯就會造成臭蟲或安全漏洞,因此能有自動化的移植工具是非常值得期待的。

不過,CSAIL實驗室目前仍在優化CodeCarbonCopy,尚未公開釋出該系統。


Advertisement

更多 iThome相關內容