微信号:javalm

介绍:莫道君行早,更有早行人;;全心敲代码,天道自酬勤

程序员福音,麻省理工推出CodeCarbonCopy,代码移植so easy

2017-10-12 18:52 Java程序员联盟

麻省理工学院(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也是一款非常实用的图像图标辅助工具。众所周知,计算机视觉需要用到大量的标注图像,而这款工具能够帮助用户创建定制化标注任务或可执行图像标注,从而提升效率。


欢迎关注:Java程序员联盟(javalm)


 
Java程序员联盟 更多文章 马云:“达摩院”必须活得比阿里巴巴长 微博程序员“一边结婚一边扩容”:“鹿晗体”引发造句狂潮刷瘫服务器 2017年10月编程语言排行榜:Java持续下滑仍稳居第一,Swift正过时? 机器人也会编程了 AI完爆初级程序员 程序员装X指南:能说专业术语尽量别说人话
猜您喜欢 BAT与小米们:一篇文章告诉你互联网公司为何拼命做金融 编程语言撕X大会,你站谁? 边际成本不能趋近于零,免费就是找死 “冰桶挑战”里,你可以学到的产品黑魔法 线下培训体验的机会来啦,点击阅读全文即可获得!!!