论文部分内容阅读
代码风格是人们在编写计算机程序源代码时使用的一套规则或指导准则,汇集了业界公认的最佳实践方法。违反代码风格编写的代码不利于开发人员和维护人员对其功能的理解,导致提升错误引入的可能性,影响程序代码的可读性与可维护性,进而降低软件产品的质量。代码风格与软件维护的关系值得深入研究,但现今还未有相关工作研究Python代码风格对软件维护的影响。为了科学合理地探讨Python代码风格违反与软件维护的关系,本文采用实证研究的方法,在开源网站中挑选7个流行的且具有4-8年以上维护时间的Python项目,在共计57个项目版本中详细分析代码风格与模块易变性、模块易错性的关系。在问题分析过程中,本文采用Fisher精确检验,Wilcoxon秩和检验以及Logistic回归模型分别探究:代码风格的违反与模块易变性、模块易错性是否相关;代码风格的违反密度与模块易变性、模块易错性是否相关;特定类型的代码风格与模块易变性、模块易错性是否更相关。实验结果表明,1)相比于未违反代码风格的模块,违反代码风格的模块更容易改变;2)相比于违反代码风格密度小的模块,违反代码风格密度大的模块更容易改变;3)在实验选取的部分项目中,违反特定类型代码风格的模块相比于其它类型代码风格的模块更容易改变;4)在代码风格与模块易错性的关系上也有类似的结论。总之,这一创新性的研究工作具有重要意义,不论是关注代码风格的研究人员,抑或是研究软件维护领域的科研人员,均能够从中得到启示和参考。基于实验数据得出的结论,我们建议软件开发者应提高对代码风格的关注程度,因为违反代码风格会降低代码的可读性和可理解性,进而增加软件维护的成本;建议软件质量维护者应多加关注违反代码风格的模块,从而在有限的时间和精力的情况下发现并解决更多问题。