首页> 外文会议> >Cloning by accident: an empirical study of source code cloning across software systems
【24h】

Cloning by accident: an empirical study of source code cloning across software systems

机译:意外克隆:对跨软件系统的源代码克隆进行的经验研究

获取原文

摘要

One of the key goals of open source development is the sharing of knowledge, experience, and solutions that pertain to a software system and its problem domain. Source code cloning is one way in which expertise can be reused across systems; cloning is known to have been used in several open source projects, such as the SCSI drivers of the Linux kernel. In this paper, we discuss two case studies in which we performed clone detection on several open source systems within the same domain. In the first case study we examined nine text editors written in C, and in the second study we examined eight X-Windows window managers written in C and C++. To our surprise, we found little evidence of "true" cloning activity, but we did notice a significant number of "accidental" clones - that is, code fragments that are similar due to the precise protocols they must use when interacting with a given API or set of libraries. We further discuss the nature of "true" versus "accidental" clones, as well as the details of our case studies.
机译:开源开发的主要目标之一是共享与软件系统及其问题域相关的知识,经验和解决方案。源代码克隆是可以在整个系统之间重用专业知识的一种方式。众所周知,克隆已在多个开源项目中使用,例如Linux内核的SCSI驱动程序。在本文中,我们讨论了两个案例研究,其中我们对同一域内的多个开源系统执行了克隆检测。在第一个案例研究中,我们检查了用C编写的九个文本编辑器,在第二个研究中,我们检查了用C和C ++编写的八个X-Windows窗口管理器。令我们惊讶的是,我们几乎没有发现“真正的”克隆活动的证据,但是我们确实注意到了大量的“偶然”克隆-即,由于与给定API交互时必须使用的精确协议,它们的代码片段相似。或一组库。我们将进一步讨论“真实”与“偶然”克隆的性质,以及我们的案例研究的详细信息。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号