当前位置: X-MOL 学术IEEE Trans. Softw. Eng. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
The Adoption of JavaScript Linters in Practice: A Case Study on ESLint
IEEE Transactions on Software Engineering ( IF 7.4 ) Pub Date : 2020-08-01 , DOI: 10.1109/tse.2018.2871058
Kristin Fjola Tomasdottir , Mauricio Aniche , Arie van Deursen

A linter is a static analysis tool that warns software developers about possible code errors or violations to coding standards. By using such a tool, errors can be surfaced early in the development process when they are cheaper to fix. For a linter to be successful, it is important to understand the needs and challenges of developers when using a linter. In this paper, we examine developers’ perceptions on JavaScript linters. We study why and how developers use linters along with the challenges they face while using such tools. For this purpose we perform a case study on ESLint, the most popular JavaScript linter. We collect data with three different methods where we interviewed 15 developers from well-known open source projects, analyzed over 9,500 ESLint configuration files, and surveyed 337 developers from the JavaScript community. Our results provide practitioners with reasons for using linters in their JavaScript projects as well as several configuration strategies and their advantages. We also provide a list of linter rules that are often enabled and disabled, which can be interpreted as the most important rules to reason about when configuring linters. Finally, we propose several feature suggestions for tool makers and future work for researchers.

中文翻译:

JavaScript Linter 在实践中的采用:ESLint 的案例研究

linter 是一种静态分析工具,它警告软件开发人员可能的代码错误或违反编码标准。通过使用这样的工具,可以在开发过程的早期发现错误,因为它们的修复成本较低。为了让 linter 成功,了解开发人员在使用 linter 时的需求和挑战非常重要。在本文中,我们研究了开发人员对 JavaScript linter 的看法。我们研究开发人员使用 linter 的原因和方式,以及他们在使用此类工具时面临的挑战。为此,我们对最流行的 JavaScript linter ESLint 进行了案例研究。我们使用三种不同的方法收集数据,采访了来自知名开源项目的 15 名开发人员,分析了 9,500 多个 ESLint 配置文件,并调查了来自 JavaScript 社区的 337 名开发人员。我们的结果为从业者提供了在他们的 JavaScript 项目中使用 linter 的理由以及几种配置策略及其优势。我们还提供了一个通常启用和禁用的 linter 规则列表,可以将其解释为配置 linter 时需要推理的最重要规则。最后,我们为工具制造商和研究人员的未来工作提出了一些功能建议。
更新日期:2020-08-01
down
wechat
bug