中文

可执行触发-动作注释

软件工程 2018-08-07 v1

摘要

自然语言元素(例如 todo 注释)常被用于开发者之间的交流,并描述在代码仓库中特定条件成立(触发器)时需要执行的任务(动作)。随着项目演进、开发流程变更和开发团队重组,这些注释因其非正式性质,经常变得无关或被遗忘。我们提出首个被称为 TrigIt 的技术,将触发-动作 todo 注释指定为可执行语句。因此,当触发器求值为真时,动作自动执行。TrigIt 规范以宿主语言(例如 Java)编写,并作为构建过程的一部分被求值。触发器被指定为对抽象语法树和构建配置脚本抽象表示的查询语句,动作被指定为代码变换步骤。我们为 Java 编程语言实现了 TrigIt,并从 8 个流行开源项目中迁移了 20 条现有触发-动作注释。我们从可执行注释中的令牌数量以及构建过程中引入的时间开销两方面评估了使用 TrigIt 的成本。

关键词

引用

@article{arxiv.1808.01729,
  title  = {Executable Trigger-Action Comments},
  author = {Pengyu Nie and Rishabh Rai and Junyi Jessy Li and Sarfraz Khurshid and Raymond J. Mooney and Milos Gligoric},
  journal= {arXiv preprint arXiv:1808.01729},
  year   = {2018}
}