【技术实现步骤摘要】
一种面向Python语言的文档缺陷检测方法
本专利技术属于计算机
,涉及python语言静态分析和自然语言处理技术,用于自动化从复杂繁琐的python文档中精准定位并找出文档缺陷,可以大大提高开发人员的审查效率,同时减少文档阅读者的阅读障碍及理解错误。
技术介绍
现代软件开发通常由许多个人的贡献组成,并且严重依赖可重用的软件构件,如库和框架等,以提高效率。为了正确使用他人的代码,开发人员需要理解文档和源代码,以熟悉必要的知识。因此这些可重用软件元素的作者有必要投入大量精力将各种指令嵌入源代码和注释中,以促进程序理解过程。然而,由于现代软件工件不断演化,而文档容易被意外忽略,因此缺陷可能存在于文档中,从而阻碍了程序理解。然而由于文档和源代码本身的体系繁杂,手动找出缺陷是非常耗时且容易出错的。因此,本专利技术旨在自动化检测出python文档中的错误,提高系统文档的准确性和可维护性。AST(abstractsyntaxtrees)是python中非常有用的一个模块,我们可以通过分析python的抽象语法树来对pyth ...
【技术保护点】
1.一种面向Python语言的文档缺陷检测方法,其特征是基于对python语言的静态分析和自然语言处理技术,对python文档中的代码和注释指令中存在的缺陷进行自动检测。涵盖了代码注释中的主要错误类型,包括:自然语言描述相关的反模式,注释中约束条件实现检测,注释中范例代码错误检测,具体步骤为:/n1)从源代码包中提取出对外开放的方法,对代码中的方法名进行反模式检测。其中,反模式是指在代码编写过程中,注释,文档,以及命名规则中,与常规设计理念不相符或使得程序难以理解的自然语言描述;/n2)从源代码包中提取方法中的参数使用约束以及其相关的异常规范,找出其中是否存在不一致的情况。 ...
【技术特征摘要】
1.一种面向Python语言的文档缺陷检测方法,其特征是基于对python语言的静态分析和自然语言处理技术,对python文档中的代码和注释指令中存在的缺陷进行自动检测。涵盖了代码注释中的主要错误类型,包括:自然语言描述相关的反模式,注释中约束条件实现检测,注释中范例代码错误检测,具体步骤为:
1)从源代码包中提取出对外开放的方法,对代码中的方法名进行反模式检测。其中,反模式是指在代码编写过程中,注释,文档,以及命名规则中,与常规设计理念不相符或使得程序难以理解的自然语言描述;
2)从源代码包中提取方法中的参数使用约束以及其相关的异常规范,找出其中是否存在不一致的情况。其中函数签名的语句(即与参数类型和值相关的语句)和异常在编程期间为用户提供了最重要的信息。它们属于方法调用指令类别,代表所有API文档指令的最大部分;
3)从源代码包的注释中提取代码示例,对示例中的方法名进行分析,如果代码中所提及的代码名,不存在于代码中已定义的代码名和代码最新API中所提供的代码名之中,则将它视为代码错误,代码错误可能包括过期API调用、API方法使用错误等。
2.根据权利要求1中的python文档缺陷检测方法,其特征是,在步骤一中,进行方法名的反模式检测;首先从源代码包中提取对外开放的方法,通过python的ast包,将方法解析成抽象语法树,提取出方法名、返回值、注释等相关信息,并与反模式的规则进...
【专利技术属性】
技术研发人员:刘嘉,梁思宇,冯洋,时清凯,陈振宇,刘佳玮,
申请(专利权)人:南京大学,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。