程序員福音!代碼移植 so easy

10-01

麻省理工學院(MIT)的科學傢們已開發出瞭一款名為 CodeCarbonCopy(CCC)的新工具,其中一名開發成員 Stelios Sidiroglou-Douskos 表示:"CodeCarbonCopy 能夠實現軟件工程界夢寐以求的目標之一:自動重用代碼。"

通過 CodeCarbonCopy,開發人員可先選擇 A 軟件的一段程式碼,再選擇 B 軟件的插入點,系統就能自動進行必要的變更,如改變參數名稱等,以確保代碼妥善的植入 B 軟件中並且,在移植代碼時,CodeCarbonCopy 還能執行靜態分析,移除在 A 軟件中必要但在 B 軟件中毫無作用的功能。

CodeCarbonCopy 之所以能夠做到這些,

第一是有基本變量移植的能力,使用 CodeCarbonCopy 意味著從獲取和導入代碼片段的兩個地方並行運行程序,CodeCarbonCopy 可識別完成同一角色的變量,並為操作人員將它們列出來。它還顯示瞭無法匹配的變量,這樣一來,程序員可以手動關聯變量或者將變量從移植過去的代碼去除。

另外,CodeCarbonCopy 還能考慮兩個程序在內部是如何表示數據的,相應調整移植過去的代碼。這參照瞭每個代碼庫是如何處理數據的(比如在兩種不同的顏色格式 RGB 和 BGR 之間進行調整)、以什麼順序處理的。也正因如此,CodeCarbonCopy 目前僅適用於在處理的數據采用固定格式的應用程序之間移植代碼,比如圖像、視頻、音頻、PDF 及其他格式。

據悉,該工具還沒有正式對外發佈,目前在內測和完善階段。研究團隊透露,他們已經成功使用 CodeCarbonCopy 在六款流行的開源圖像處理程序之間移植瞭代碼。團隊進行瞭 8 次試驗,其中 7 次成功,接受端程序成功的執行瞭移植過去的代碼,沒有錯誤。測試的軟件分別為:MPlayer、VLC、mtPaint、cwebp、bmp2tiff 與 ViewNIOR。

當然,這不是麻省理工學院(MIT)第一次試圖革編程界的命。此前,他們還設計開發瞭一款少兒編程工具 Scratch。使用者可以不認識英文單詞,也可以不會使用鍵盤。構成程序的命令和參數通過積木形狀的模塊來實現,用鼠標拖動模塊到程序編輯欄就可以瞭。

此外,MIT 開放的圖像標註工具源代碼 LabelMe 也是一款非常實用的圖像圖標輔助工具。眾所周知,計算機視覺需要用到大量的標註圖像,而這款工具能夠幫助用戶創建定制化標註任務或可執行圖像標註,從而提升效率。

精彩圖片
文章評論 相關閱讀
© 2016 看看新聞 http://www.kankannews.cc/