首页> 外文期刊>Empirical Software Engineering >Helping or not helping? Why and how trivial packages impact the npm ecosystem
【24h】

Helping or not helping? Why and how trivial packages impact the npm ecosystem

机译:帮助还是不帮助?为什么和微不足道的包裹如何影响NPM生态系统

获取原文
获取原文并翻译 | 示例
           

摘要

Developers often share their code snippets by packaging them and making them available to others through software packages. How much a package does and how big it is can be seen as positive or negative. Recent studies showed that many packages that exist in the npm ecosystem are trivial and may introduce high dependency overhead. Hence, one question that arises is why developers choose to publish these trivial packages. Therefore, in this paper, we perform a developer-centered study to empirically examine why developers choose to publish such trivial packages. Specifically, we ask 1) why developers publish trivial packages, 2) what they believe to be the possible negative impacts of these packages, and 3) how such negative issues can be mitigated. The survey response of 59 JavaScript developers who publish trivial npm packages showed that the main advantages for publishing these trivial packages are to provide reusable components, testing & documentation, and separation of concerns. Even the developers who publish these trivial packages admitted to having issues when they publish such packages, which include the maintenance of multiple packages, dependency hell, finding the right package, and the increase of duplicated packages in the ecosystems. Furthermore, we found that the majority of the developers suggested grouping these trivial packages to cope with the problems associated with publishing them. Then, to quantitatively investigate the impact of these trivial packages on the npm ecosystem and its users, we examine grouping these trivial packages. We found that if trivial packages that are always used together are grouped, the ecosystem can reduce the number of dependencies by approximately 13%. Our findings shed light on the impact of publishing trivial packages and show that ecosystems and developer communities need to rethink their publishing policies since it can negatively impact the developers and the entire ecosystem.
机译:开发人员通常通过打包它们并通过软件包将其提供给其他人来分享他们的代码片段。包裹确实多少是多少,它可以被视为正面或负面。最近的研究表明,NPM生态系统中存在的许多包装是微不足道的,并且可能引入高依赖性开销。因此,出现一个问题是为什么开发人员选择发布这些微型包的原因。因此,在本文中,我们执行开发人员中心的研究,以证明为什么开发人员选择发布此类琐碎套餐。具体而言,我们要求1)为什么开发人员发布琐碎的软件包,2)他们认为是什么可能对这些包的负面影响,以及3)这种负面问题如何减轻。发布Trivial NPM软件包的59个JavaScript开发人员的调查响应表明,发布这些琐碎套餐的主要优点是提供可重用的组件,测试和文档以及对关注的分离。即使是在发布此类软件包时发布这些琐碎软件包的开发人员也允许发布此类软件包,其中包括维护多个软件包,依赖性地狱,找到合适的包,以及生态系统中复制包的增加。此外,我们发现大多数开发人员建议将这些琐碎的包裹分组以应对与发布它们相关的问题。然后,为了定量调查这些微型包对NPM生态系统及其用户的影响,我们检查这些琐碎的包装。我们发现,如果始终一起使用的普通包,则生态系统可以将依赖性的数量减少约13%。我们的调查结果阐明了出版琐碎的包装的影响,并表明生态系统和开发人员社区需要重新思考他们的出版政策,因为它可以对开发人员和整个生态系统产生负面影响。

著录项

获取原文

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号