MIT打造不同专案的程式码移植工具CodeCarbonCopy
麻省理工学院的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,尚未公开释出该系统。
