程序员福音,麻省理工推出CodeCarbonCopy,代码移植so easy
麻省理工学院(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)
- Q新闻丨中兴一程序员跳楼身亡;Kotlin和C成年度候选语言;谷歌在
- AlphaGo背后的男人!4岁学象棋,8岁学编程,哈佛&麻省双博士后,
- 硅谷的工程师来告诉你程序员薪酬到底有多高?
- 农村这种叫连猪都不敢吃的野草,却是癌症和白血病的福音!
- 技術宅的福音:不可描述的xxx,一樣可以diy!從今以後誰“下海”
- 懒癌患者福音:有了它,再也不用纠结了!
- 麻省理工研发新型桌面3D打印机:速度快十倍,几分钟打镜框
- 据说这是程序员被黑最惨的一次!
- 重磅福音!A股大赛冠军“万人股友交流圈”成立,(民间众多股神
- 话说,为什么程序员总想打产品经理