您的位置: 首页 >互联网 >

研究人员在GitHub上编译了一个可执行Python代码片段的新数据库

2019-06-11 17:35:50 编辑: 来源:
导读 北卡罗来纳州立大学的一组研究人员最近对GitHub上共享的Python代码片段的可执行状态进行了实证分析。他们的研究预先发布在arXiv上,还提供

北卡罗来纳州立大学的一组研究人员最近对GitHub上共享的Python代码片段的可执行状态进行了实证分析。他们的研究预先发布在arXiv上,还提供了Gistable,这是一个新的GitHub gist系统可执行Python代码片段数据库,可以在软件工程领域实现可重复的研究。

每天,全球的软件开发人员在线创建和共享代码,以演示和概述新的编程概念。GitHub是最大的在线平台之一,开发人员可以在其上共享他们的代码片段并协作开发软件。目前,它包含超过300,000个Python片段和超过450万个各种编程语言的要点。

虽然在线发布的代码片段非常有用,但有时它们不能直接由其他人执行。这可能是由于代码中的解析错误或在包含未满足的依赖项的环境中执行代码段的问题。

为了更好地了解GitHub的gist系统上托管的代码片段实际上是可执行的,北卡罗来纳州立大学的研究人员对该平台上托管的公共Python脚本的可执行性进行了全面评估。他们的研究旨在确定代码片段执行的常见问题,这可为进一步研究自动化软件配置管理提供有价值的见解。

在他们的研究中,研究人员还提出了Gistable,一个基于GitHub的gist系统构建的数据库和可扩展框架。Gistable包含10,259个Python代码片段,其中大约5,000个带有Dockerfile,用于配置和执行它们而不会导致导入错误。

“我们在Gistable上的工作是作为一个涉及应用程序环境自动配置的大型项目的一部分而推动的,”执行该研究的研究人员Eric Horton告诉Tech Xplore。“鉴于代码库,例如在Gistable中研究的代码片段,我们希望找到一个可以为他们构建足够执行环境的流程,而无需开发人员的输入。为了做到这一点,我们首先必须退一步回答几个问题。首先,这是一个常见的用例吗?我们需要为现有应用程序需要某种非平凡配置的频率建立基线。其次,当不可执行时,需要什么类型的配置才能执行?“

在他们的研究中,研究人员发现,75.6%的分析Python要点需要大量配置来克服诸如缺少依赖性,配置文件,依赖特定操作系统或其他环境配置挑战等问题。此外,在尝试解决配置错误时,开发人员对资源名称所做的假设在不到一半的时间内被发现是正确的。

“我们发现大约30%的样本属于'难以配置'类别,最常见的配置难度是依赖于外部库,”Horton解释说。“我们在不久的将来的研究将集中在寻找和安装这些库的技术上。之后,我们希望解决作为Gistable的一部分发现的其他常见配置困难。”

总体而言,配置不充分的环境是阻止Python代码片段可执行的主要因素。在某些情况下,可以自动恢复正确的应用程序环境配置,而其他配置则需要进一步的干预。未来,研究人员计划研究策略,以始终如一地执行有效的环境配置。

“我认为这项研究最有意义的成就是我们对开发人员如何手动执行配置的调查,”Horton说。“参与者的回复不仅证实这在很多情况下是一个难题,而且还帮助我们对可能使配置变得困难的事情进行分类。这非常有用,因为它为我们提供了一个具体的未来研究项目清单“。


免责声明:本文由用户上传,如有侵权请联系删除!

精彩推荐

图文推荐

点击排行

2016-2022 All Rights Reserved.平安财经网.复制必究 联系QQ280 715 8082   备案号:闽ICP备19027007号-6

本站除标明“本站原创”外所有信息均转载自互联网 版权归原作者所有。