熟练代码的可维护性如何?对三个 PyPI 库的案例研究
软件工程
2024-10-11 v2
摘要
Python 因其能面向更广泛的开发者、数据科学家和机器学习专家群体而备受推崇。类似其他编程语言,Python 代码也存在从初级到高级的编写层次。然而,像所有软件一样,代码需要不断维护以应对 bug 和新功能需求。虽然 Python 的禅宗告诫我们“简单胜于复杂”,但我们假设更优雅、熟练的代码可能对开发者而言难以维护。为研究代码可维护性理解与代码熟练度之间的关系,我们present对三个 Python 库中 Python 代码复杂度的探索性研究。具体而言,我们调查了熟练代码在文件中的风险水平。作为起始点,我们从总计 3003 个文件的三个 PyPI 库中采集并收集了代码熟练度数据。我们识别出若干高熟练度且高风险的代码实例,其中包括简单列表推导、enumerate 调用、生成器表达式、简单字典推导以及 super 函数。我们的初步案例表明,大多数代码熟练开发呈现低可维护性风险,但也存在熟练代码同时具备高维护风险的情形。我们设想此研究将帮助开发者识别在何时何地使用熟练代码可能对未来代码维护活动产生不利影响的情形。
引用
@article{arxiv.2410.05683,
title = {How Maintainable is Proficient Code? A Case Study of Three PyPI Libraries},
author = {Indira Febriyanti and Youmei Fan and Kazumasa Shimari and Kenichi Matsumoto and Raula Gaikovina Kula},
journal= {arXiv preprint arXiv:2410.05683},
year = {2024}
}