Teddy: Automatic Recommendation of Pythonic Idiom Usage For Pull-Based Software Projects

Teddy: Automatic Recommendation of Pythonic Idiom Usage For Pull-Based Software Projects
复制标题

Teddy:为基于拉取的软件项目自动推荐 Pythonic 习语用法

DOI:
10.1109/icsme46990.2020.00098
复制
发表时间:
2020
期刊:
International Conference on Software Maintenance and Evolution
影响因子:
--
通讯作者:
Kula Raula Gaikovina
Kula Raula Gaikovina
中科院分区:
--
文献类型:
--
作者:
Phan-udom Purit;Wattanakul Naruedon;Sakulniwat Tattiya;Ragkhitwetsagul Chaiyong;Sunetnanta Thanwadee;Choetkiertikul Morakot;Kula Raula Gaikovina

文献摘要

参考文献

被引文献

相似文献

Python代码是遵循Python社区指导原则和实践的惯用代码。提供性能和可读性的好处,Python代码被声称被经验丰富的Python开发人员广泛采用,但对于新手程序员来说可能是一个学习曲线。为了帮助学习Pythonic,我们创建了一个名为Teddy的自动化工具,它可以帮助检查Pythonic习语的使用情况。该工具提供了一个带有即时分析的预防模式,建议在代码审查期间使用Python习惯用法,并提供了一个带有历史分析的检测模式,对习惯用法和非习惯用法的代码进行彻底扫描。在本文中,我们首先描述了我们的工具和评估其性能。此外,我们提出了一个案例研究,演示了如何使用泰迪在现实生活中的场景中的开源项目。测试结果表明,Teddy对Python语言和非Python语言的代码具有较高的检测精度。使用交互式可视化,我们演示了新手程序员如何在他们的项目中导航和识别Pythonic习语和非Pythonic代码。我们的视频演示与完整的交互式可视化可在https://youtu.be/vOCQReSvBxA。
Pythonic code is idiomatic code that follows guiding principles and practices within the Python community. Offering performance and readability benefits, Pythonic code is claimed to be widely adopted by experienced Python developers, but can be a learning curve to novice programmers. To aid with Pythonic learning, we create an automated tool, called Teddy, that can help checking the Pythonic idiom usage. The tool offers a prevention mode with Just-In-Time analysis to recommend the use of Pythonic idiom during code review and a detection mode with historical analysis to run a thorough scan of idiomatic and non-idiomatic code. In this paper, we first describe our tool and an evaluation of its performance. Furthermore, we present a case study that demonstrates how to use Teddy in a real-life scenario on an Open Source project. An evaluation shows that Teddy has high precision for detecting Pythonic idiom and non-Pythonic code. Using interactive visualizations, we demonstrate how novice programmers can navigate and identify Pythonic idiom and non-Pythonic code in their projects. Our video demo with the full interactive visualizations is available at https://youtu.be/vOCQReSvBxA.
可视化 Python 习语随时间的使用情况:with open 习语的案例研究
DOI: --
发表时间: 2019
期刊:
影响因子: --
作者:
Tattiya Sakulniwat;Raula Gaikovina Kula;Takashi Ishio;Chaiyong Ragkhitwetsagul;Morakot Choetkiertikul;Thanwadee Sunetnanta;Dong Wang and Kenichi Matsumoto
通讯作者: Dong Wang and Kenichi Matsumoto
类似grep的代码克隆搜索工具:ccgrep
DOI: --
发表时间: 2019
期刊:
影响因子: --
作者:
宮本 裕也;井上 克郎
通讯作者: 井上 克郎