CN111190643A - 程序代码注释的生成方法、系统、电子设备及存储介质 - Google Patents

程序代码注释的生成方法、系统、电子设备及存储介质 Download PDF

Info

Publication number
CN111190643A
CN111190643A CN201911398174.7A CN201911398174A CN111190643A CN 111190643 A CN111190643 A CN 111190643A CN 201911398174 A CN201911398174 A CN 201911398174A CN 111190643 A CN111190643 A CN 111190643A
Authority
CN
China
Prior art keywords
code
annotation
target
information
generating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
CN201911398174.7A
Other languages
English (en)
Inventor
边智慧
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN201911398174.7A priority Critical patent/CN111190643A/zh
Publication of CN111190643A publication Critical patent/CN111190643A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/73Program documentation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Library & Information Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种程序代码注释的生成方法,所述生成方法包括提取目标代码的代码特征信息;其中,所述代码特征信息包括代码关键词、代码方法、代码动作和动作参数;根据所述代码特征信息生成所述目标代码对应的自然语言信息;生成所述自然语言信息对应的注释文本,并输出包括所述注释文本的目标代码。本申请能够自动生成程序代码的注释,提高代码注释效率。本申请还公开了一种程序代码注释的生成系统、一种电子设备及一种存储介质,具有以上有益效果。

Description

程序代码注释的生成方法、系统、电子设备及存储介质
技术领域
本申请涉及计算机技术领域,特别涉及一种程序代码注释的生成方法、系统、一种电子设备及一种存储介质。
背景技术
随着IT行业的快速发展,开发者在开发程序的过程中的代码量也在逐步上升,很多程序员在开发的时候不愿意去添加注释,导致后来的开发或者维护人员在理解代码上耗费很大的精力。
目前尚不存在具体的技术方案来完成实现程序代码注释的生成,相关技术中通过method refactoring(方法重构)来快速理解代码,这种方法是通过方法的调用来换一种方式表达,但是该方法也无法生成整个代码的注释。
因此,如何自动生成程序代码的注释,提高代码注释效率是本领域技术人员目前需要解决的技术问题。
发明内容
本申请的目的是提供一种程序代码注释的生成方法、系统、一种电子设备及一种存储介质,能够自动生成程序代码的注释,提高代码注释效率。
为解决上述技术问题,本申请提供一种程序代码注释的生成方法,该程序代码注释的生成方法包括:
提取目标代码的代码特征信息;其中,所述代码特征信息包括代码关键词、代码方法、代码动作和动作参数;
根据所述代码特征信息生成所述目标代码对应的自然语言信息;
生成所述自然语言信息对应的注释文本,并输出包括所述注释文本的目标代码。
可选的,在生成所述自然语言信息对应的注释文本之后,还包括:
记录所述注释文本中每一子文本与所述目标代码行数的对应关系;
相应的,输出包括所述注释文本的目标代码;
根据所述对应关系确定每一所述子文本对应的行数,根据所述子文本对应的行数输出包括所述注释文本的目标代码。
可选的,所述提取目标代码的代码特征信息包括:
通过对所述目标代码递归遍历提取所述目标代码的代码特征信息。
可选的,在根据所述代码特征信息生成所述目标代码对应的自然语言信息的过程中,还包括:
当检测到无法生成自然语言信息的异常代码特征信息时,利用代码解析池中的备选代码方法执行方法重构操作以便生成所述自然语言信息。
可选的,所述利用代码解析池中的备选代码方法执行方法重构操作以便生成所述自然语言信息,包括:
确定所述异常代码特征信息中的方法的程序代码目的,将代码解析池中与所述程序代码目的对应的备选代码方法设置为目标备选代码方法;
将所述异常代码特征信息中的方法替换为所述目标备选代码方法得到备选代码特征信息;
利用所述备选代码特征信息执行解析操作,以便生成所述自然语言信息。
可选的,还包括:
当利用所述备选代码特征信息执行解析操作时,若检测到解析失败信息,则将所述异常代码特征信息中的方法替换为新的目标备选代码方法以便执行解析操作;
记录方法替换次数;
当所述方法替换次数大于预设值时,输出注释失败的提示信息。
可选的,在输出包括所述注释文本的目标代码之后,还包括:
对通过方法替换得到的注释文本进行标记。
本申请还提供了一种程序代码注释的生成系统,该程序代码注释的生成系统包括:
特征提取模块,用于提取目标代码的代码特征信息;其中,所述代码特征信息包括代码关键词、代码方法、代码动作和动作参数;
自然语言生成模块,用于根据所述代码特征信息生成所述目标代码对应的自然语言信息;
注释模块,用于生成所述自然语言信息对应的注释文本,并输出包括所述注释文本的目标代码。
本申请还提供了一种存储介质,其上存储有计算机程序,所述计算机程序执行时实现上述程序代码注释的生成方法执行的步骤。
本申请还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现上述程序代码注释的生成方法执行的步骤。
本申请提供了一种程序代码注释的生成方法,包括提取目标代码的代码特征信息;其中,所述代码特征信息包括代码关键词、代码方法、代码动作和动作参数;根据所述代码特征信息生成所述目标代码对应的自然语言信息;生成所述自然语言信息对应的注释文本,并输出包括所述注释文本的目标代码。
本申请向提取目标代码的代码关键词、代码方法、代码动作和动作参数等代码特征信息,由于代码特征信息描述了目标代码运行过程中的操作流程因此根据代码特征新生成对应的自然语言信息。本申请进一步生成资源语言信息对应的注释文本,进而得到了包括注释文本的目标代码。本申请能够自动生成程序代码的注释,提高代码注释效率。本申请同时还提供了一种程序代码注释的生成系统、一种电子设备和一种存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的一种程序代码注释的生成方法的流程图;
图2为本申请实施例所提供的另一种程序代码注释的生成方法的流程图;
图3为本申请实施例所提供的一种代码解析器的解析代码原理示意图;
图4为本申请实施例所提供的一种程序代码注释的生成系统的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面请参见图1,图1为本申请实施例所提供的一种程序代码注释的生成方法的流程图。
具体步骤可以包括:
S101:提取目标代码的代码特征信息;
其中,本实施例中所提到的目标代码可以为某个程序或多个程序的程序代码,该目标代码可以为Java语言编写的代码、可以为C语言编写的代码,本实施例不对目标代码对应的编程语言进行限定。在本步骤之前可以存在获取目标代码的操作,在得到目标代码后可以对目标代码执行代码特征提取操作得到代码特征信息。
本实施例所提取的代码特征信息可以包括代码关键词、代码方法、代码动作和动作参数。代码关键词为编译器有特殊含义的字符串,是编译器和程序员的一个约定,可以利用代码关键词来告诉编译器其声明的变量类型、类、方法特性等信息。本实施例可以预先设置每一种编程语言对应的代码关键词表,在提取目标代码之前先确定目标代码的编程语言,进而在提取目标代码的代码关键词时可以将目标代码与代码关键词表执行匹配操作确定目标代码中的代码关键词。代码方法指程序代码中的函数,本实施例也可以预先设置函数表进而识别目标代码中的代码方法。代码动作指程序代码中的动作,如打印动作、输出动作等,动作参数为代码动作对应的参数如打印的地址、输出的端口等。作为一种可行的实施方式,本实施例可以通过对所述目标代码递归遍历提取所述目标代码的代码特征信息。
S102:根据所述代码特征信息生成所述目标代码对应的自然语言信息;
其中,在得到代码特征信息之后可以通过解析得到对应的自然语言,具体的本实施例可以根据目标代码中代码特征信息的具体内容和对应的执行逻辑得到每一行目标代码对应的操作内容,即将编程语言转换为自然语言。通常的,自然语言信息可以为目标代码对应的英文信息。
S103:生成所述自然语言信息对应的注释文本,并输出包括所述注释文本的目标代码。
其中,在得到了自然语言信息的基础上,本实施例可以将自然语言信息转化为特定语种的注释文本,例如转换为中文注释,并将注释文本与目标代码一同输出。本实施例还可以根据注释文本在开发过程中排查代码上的Bug,并生成对应的解决方法。
本实施例向提取目标代码的代码关键词、代码方法、代码动作和动作参数等代码特征信息,由于代码特征信息描述了目标代码运行过程中的操作流程因此根据代码特征新生成对应的自然语言信息。本实施例进一步生成资源语言信息对应的注释文本,进而得到了包括注释文本的目标代码。本实施例能够自动生成程序代码的注释,提高代码注释效率。
作为对于图1对应实施例的进一步介绍,在图1对应实施例S103生成所述自然语言信息对应的注释文本之后,还可以记录所述注释文本中每一子文本与所述目标代码行数的对应关系,进而根据所述对应关系确定每一所述子文本对应的行数,根据所述子文本对应的行数输出包括所述注释文本的目标代码。
进一步的,在根据所述代码特征信息生成所述目标代码对应的自然语言信息的过程中,当检测到无法生成自然语言信息的异常代码特征信息时,本实施例可以利用代码解析池中的备选代码方法执行方法重构操作以便生成所述自然语言信息。方法重构指通过方法的调用来换一种方式表达,通过分析试行各个方法来找到一个合适的易于理解的方法。
作为对于图1对应实施例的进一步介绍,利用代码解析池中的备选代码方法执行方法重构操作以便生成所述自然语言信息可以包括以下步骤:
步骤1:确定所述异常代码特征信息中的方法的程序代码目的,将代码解析池中与所述程序代码目的对应的备选代码方法设置为目标备选代码方法;
步骤2:将所述异常代码特征信息中的方法替换为所述目标备选代码方法得到备选代码特征信息;
步骤3:利用所述备选代码特征信息执行解析操作,以便生成所述自然语言信息。
其中,代码解析池中可以包括多个备选代码方法,每一种代码方法都有其对应的程序代码目的,即对应的代码程序实现效果,本实施例可以预先设置代码解析池中每一备选代码方法对应的程序代码目的,在需要执行方法重构操作时可以从代码解析池中选择与异常代码特征信息中的方法的程序代码目的相同的备选代码方法设置为目标备选代码方法,执行代码方法替换操作得到备选代码特征信息,进而利用所述备选代码特征信息执行解析操作生成所述自然语言信息。
进一步的,当利用所述备选代码特征信息执行解析操作时,当利用所述备选代码特征信息执行解析操作时,若检测到解析失败信息,则将所述异常代码特征信息中的方法替换为新的目标备选代码方法以便执行解析操作;记录方法替换次数;当所述方法替换次数大于预设值时,输出注释失败的提示信息。
作为一种可行的实施方式,在输出包括所述注释文本的目标代码之后,还可以对通过方法替换得到的注释文本进行标记。由于通过方法替换得到的注释文本可能存在一定的偏差,因此可以在输出包括注释文本的目标代码时,对对通过方法替换得到的注释文本进行标记,以便进行人工核对,提高注释正确率。
下面通过在实际应用中的实施例说明上述实施例描述的流程。请参见图2,图2为本申请实施例所提供的另一种程序代码注释的生成方法的流程图。本实施例面向Java语言来完成对代码的解析,进而自动生成注解。在识别代码块后,将其放入代码解析器中,然后提取其中的关键字段、动作以及参数,通过对它们的解析,用一些简短的语句将其描述,紧接着将描述语言输入文本编译器,最后生成注释。其中,解析器中包含各类识别代码的具体方法,最明显且有效的是调用递归遍历的方法来解析代码。
首先,通过识别完代码块后将目标代码输入代码解析器解析,在此过程中提取目标代码中的关键代码、方法、动作及其参数,然后通过具体解析生成简单的自然语言。然后,将代码解析器解析出来后生成的简单的自然语言全部传入到文本生成器中,将其进行汇总整合生成注释。在提取代码块关键字段过程中若存在未能解析的代码,则将未能解析的代码输入到解析池中进行方法重构最终得到注释文本。在遇到代码解析器无法解析的代码时,可以将无法解析的代码中的方法重构替换成相似的方法,若连续替换10词以上依然无法解析则可以输出解析失败的提示信息。
请参见图3,图3为本申请实施例所提供的一种代码解析器的解析代码原理示意图,当向代码解析器输入目标代码后,代码解析器会选择关键词、方法、动作及参数。例如,解析器会提取第3行的interface Iinterface,通过解析可以判断出这是在定义一个接口;第6行代码中void method();声明接口的方法;第8行代码中的implements和Iinterface可以判断出这段代码是在实现接口;第10行的public void method(){}是在重写接口的方法。如上所述,此过程会提取并解析代码中的方法、动作等来完成对代码的解析,会结合被识别的整段代码进行解析。
本实施例通过代码解析器提取关键代码的过程,其中主要是运用递归遍历来完成。在解析代码的过程中遇到无法解析的代码,应该运用方法重构,找到一个合适的方法来替换,循环解析,直至解析出最合适的注释。本实施例通过设计面向编程语言向自然语言转换的方法,来提高开发人员后续的开发进程,以及给后来的维护人员也带来了一定的方便,可以高效率的完成开发以及维护。本实施例通过代码解析器来做解析添加注释,相较于人工后续添加注释效率较高,节省了人力以及时间。
请参见图4,图4为本申请实施例所提供的一种程序代码注释的生成系统的结构示意图;
该系统可以包括:
特征提取模块100,用于提取目标代码的代码特征信息;其中,所述代码特征信息包括代码关键词、代码方法、代码动作和动作参数;
自然语言生成模块200,用于根据所述代码特征信息生成所述目标代码对应的自然语言信息;
注释模块300,用于生成所述自然语言信息对应的注释文本,并输出包括所述注释文本的目标代码。
本实施例向提取目标代码的代码关键词、代码方法、代码动作和动作参数等代码特征信息,由于代码特征信息描述了目标代码运行过程中的操作流程因此根据代码特征新生成对应的自然语言信息。本实施例进一步生成资源语言信息对应的注释文本,进而得到了包括注释文本的目标代码。本实施例能够自动生成程序代码的注释,提高代码注释效率。
进一步的,还包括:
对应关系记录模块,用于在生成所述自然语言信息对应的注释文本之后,记录所述注释文本中每一子文本与所述目标代码行数的对应关系;
相应的,注释模块300用于根据所述对应关系确定每一所述子文本对应的行数,根据所述子文本对应的行数输出包括所述注释文本的目标代码。
进一步的,特征提取模块100用于通过对所述目标代码递归遍历提取所述目标代码的代码特征信息。
进一步的,还包括:
方法重构模块,用于当检测到无法生成自然语言信息的异常代码特征信息时,利用代码解析池中的备选代码方法执行方法重构操作以便生成所述自然语言信息。
进一步的,方法重构模块包括:
备选方法确定单元,用于确定所述异常代码特征信息中的方法的程序代码目的,将代码解析池中与所述程序代码目的对应的备选代码方法设置为目标备选代码方法;
备选代码特征信息生成单元,用于将所述异常代码特征信息中的方法替换为所述目标备选代码方法得到备选代码特征信息;
第一解析单元,用于利用所述备选代码特征信息执行解析操作,以便生成所述自然语言信息。
进一步的,还包括:
方法替换单元,用于当利用所述备选代码特征信息执行解析操作时,若检测到解析失败信息时,将所述异常代码特征信息中的方法替换为新的目标备选代码方法以便执行解析操作;
计数单元,用于记录方法替换次数;
失败提示单元,用于当所述方法替换次数大于预设值时,输出注释失败的提示信息。
标记单元,用于在输出包括所述注释文本的目标代码之后,对通过方法替换得到的注释文本进行标记。
由于系统部分的实施例与方法部分的实施例相互对应,因此系统部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本申请还提供了一种存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请还提供了一种电子设备,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然所述电子设备还可以包括各种网络接口,电源等组件。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (10)

1.一种程序代码注释的生成方法,其特征在于,包括:
提取目标代码的代码特征信息;其中,所述代码特征信息包括代码关键词、代码方法、代码动作和动作参数;
根据所述代码特征信息生成所述目标代码对应的自然语言信息;
生成所述自然语言信息对应的注释文本,并输出包括所述注释文本的目标代码。
2.根据权利要求1所述生成方法,其特征在于,在生成所述自然语言信息对应的注释文本之后,还包括:
记录所述注释文本中每一子文本与所述目标代码行数的对应关系;
相应的,输出包括所述注释文本的目标代码;
根据所述对应关系确定每一所述子文本对应的行数,根据所述子文本对应的行数输出包括所述注释文本的目标代码。
3.根据权利要求1所述生成方法,其特征在于,所述提取目标代码的代码特征信息包括:
通过对所述目标代码递归遍历提取所述目标代码的代码特征信息。
4.根据权利要求1所述生成方法,其特征在于,在根据所述代码特征信息生成所述目标代码对应的自然语言信息的过程中,还包括:
当检测到无法生成自然语言信息的异常代码特征信息时,利用代码解析池中的备选代码方法执行方法重构操作以便生成所述自然语言信息。
5.根据权利要求4所述生成方法,其特征在于,所述利用代码解析池中的备选代码方法执行方法重构操作以便生成所述自然语言信息,包括:
确定所述异常代码特征信息中的方法的程序代码目的,将代码解析池中与所述程序代码目的对应的备选代码方法设置为目标备选代码方法;
将所述异常代码特征信息中的方法替换为所述目标备选代码方法得到备选代码特征信息;
利用所述备选代码特征信息执行解析操作,以便生成所述自然语言信息。
6.根据权利要求1至5任一项所述生成方法,其特征在于,还包括:
当利用所述备选代码特征信息执行解析操作时,若检测到解析失败信息,则将所述异常代码特征信息中的方法替换为新的目标备选代码方法以便执行解析操作;
记录方法替换次数;
当所述方法替换次数大于预设值时,输出注释失败的提示信息。
7.根据权利要求6所述生成方法,其特征在于,在输出包括所述注释文本的目标代码之后,还包括:
对通过方法替换得到的注释文本进行标记。
8.一种程序代码注释的生成系统,其特征在于,包括:
特征提取模块,用于提取目标代码的代码特征信息;其中,所述代码特征信息包括代码关键词、代码方法、代码动作和动作参数;
自然语言生成模块,用于根据所述代码特征信息生成所述目标代码对应的自然语言信息;
注释模块,用于生成所述自然语言信息对应的注释文本,并输出包括所述注释文本的目标代码。
9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如权利要求1至7任一项所述程序代码注释的生成方法的步骤。
10.一种存储介质,其特征在于,所述存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如上权利要求1至7任一项所述程序代码注释的生成方法的步骤。
CN201911398174.7A 2019-12-30 2019-12-30 程序代码注释的生成方法、系统、电子设备及存储介质 Withdrawn CN111190643A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911398174.7A CN111190643A (zh) 2019-12-30 2019-12-30 程序代码注释的生成方法、系统、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911398174.7A CN111190643A (zh) 2019-12-30 2019-12-30 程序代码注释的生成方法、系统、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN111190643A true CN111190643A (zh) 2020-05-22

Family

ID=70707993

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911398174.7A Withdrawn CN111190643A (zh) 2019-12-30 2019-12-30 程序代码注释的生成方法、系统、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN111190643A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112416429A (zh) * 2020-11-23 2021-02-26 平安普惠企业管理有限公司 代码注释生成方法及装置
CN112559035A (zh) * 2021-01-22 2021-03-26 支付宝(杭州)信息技术有限公司 用于管理代码文本的笔记的方法和装置
CN113312057A (zh) * 2021-06-17 2021-08-27 上海小熊星教育科技有限公司 一种代码处理方法、编程辅助方法、介质及电子设备

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112416429A (zh) * 2020-11-23 2021-02-26 平安普惠企业管理有限公司 代码注释生成方法及装置
CN112559035A (zh) * 2021-01-22 2021-03-26 支付宝(杭州)信息技术有限公司 用于管理代码文本的笔记的方法和装置
CN113312057A (zh) * 2021-06-17 2021-08-27 上海小熊星教育科技有限公司 一种代码处理方法、编程辅助方法、介质及电子设备
CN113312057B (zh) * 2021-06-17 2023-10-03 上海小熊星教育科技有限公司 一种代码处理方法、编程辅助方法、介质及电子设备

Similar Documents

Publication Publication Date Title
US11354225B2 (en) Automating identification of test cases for library suggestion models
CN106919434B (zh) 一种代码生成方法及装置
Athiwaratkun et al. Multi-lingual evaluation of code generation models
US20200264870A1 (en) Automating Generation of Library Suggestion Engine Models
Zhai et al. Automatic model generation from documentation for Java API functions
US10324695B2 (en) Method for transforming first code instructions in a first programming language into second code instructions in a second programming language
Butler et al. Mining java class naming conventions
US20140282373A1 (en) Automated business rule harvesting with abstract syntax tree transformation
CN111190643A (zh) 程序代码注释的生成方法、系统、电子设备及存储介质
CN112328226B (zh) 一种嵌入式系统自动化测试代码生成方法及装置
CN112379917A (zh) 浏览器兼容性提升方法、装置、设备及存储介质
Bian et al. SPAPE: A semantic-preserving amorphous procedure extraction method for near-miss clones
Pârtachi et al. Posit: Simultaneously tagging natural and programming languages
KR20200071413A (ko) 학습용 데이터 생성 장치, 소스 코드 오류 분석 장치 및 방법
Kulkarni et al. Generating and analyzing test cases from software requirements using nlp and hadoop
Van den Brink et al. Deriving modernity signatures for PHP systems with static analysis
Agarwal et al. Copilot Evaluation Harness: Evaluating LLM-Guided Software Programming
Frick Understanding software changes: Extracting, classifying, and presenting fine-grained source code changes
CN115795059A (zh) 一种面向敏捷开发的威胁建模方法及系统
EP2535813B1 (en) Method and device for generating an alert during an analysis of performance of a computer application
CN113051262B (zh) 一种数据质检方法、装置、设备及存储介质
CN115629762A (zh) 一种json数据处理方法、装置、电子设备及存储介质
Girka et al. A mechanically checked generation of correlating programs directed by structured syntactic differences
Bian et al. Identifying accurate refactoring opportunities using metrics
Lillack et al. Detection of code clones in software generators

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication

Application publication date: 20200522

WW01 Invention patent application withdrawn after publication