CN117492760B - 一种基于人工智能的代码优化方法、设备及存储介质 - Google Patents
一种基于人工智能的代码优化方法、设备及存储介质 Download PDFInfo
- Publication number
- CN117492760B CN117492760B CN202311415387.2A CN202311415387A CN117492760B CN 117492760 B CN117492760 B CN 117492760B CN 202311415387 A CN202311415387 A CN 202311415387A CN 117492760 B CN117492760 B CN 117492760B
- Authority
- CN
- China
- Prior art keywords
- code
- panelist
- optimization model
- codes
- historical
- 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.)
- Active
Links
- 238000005457 optimization Methods 0.000 title claims abstract description 138
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000013473 artificial intelligence Methods 0.000 title claims abstract description 26
- 238000003860 storage Methods 0.000 title claims abstract description 18
- 238000012549 training Methods 0.000 claims abstract description 44
- 238000012545 processing Methods 0.000 claims abstract description 22
- 230000004048 modification Effects 0.000 claims abstract description 21
- 238000012986 modification Methods 0.000 claims abstract description 21
- 238000012552 review Methods 0.000 claims description 13
- 238000001914 filtration Methods 0.000 claims description 10
- 238000012550 audit Methods 0.000 claims description 8
- 238000002372 labelling Methods 0.000 claims description 8
- 238000000605 extraction Methods 0.000 claims description 5
- 238000003058 natural language processing Methods 0.000 claims description 4
- 230000000694 effects Effects 0.000 abstract description 6
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000008439 repair process Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/447—Target code generation
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种基于人工智能的代码优化方法、设备及存储介质,属于代码优化的技术领域。方法包括:获取组员代码集,并构建初始代码优化模型;其中,所述组员代码集包括历史组员代码、组员最新代码、组员撰写代码;基于所述历史组员代码训练所述初始代码优化模型,以获取适配于组员代码的代码优化模型;基于所述代码优化模型处理所述组员撰写代码,并修改所述组员撰写代码,以获取组员修改代码;在所述组员撰写代码修改结束后,生成代码审查报告并上传至组员代码平台;其中,所述组员代码平台包括所有组员的代码。本申请通过上述方法实现了优化代码并统一多段代码的格式的效果。
Description
技术领域
本申请涉及代码优化的技术领域,尤其涉及一种基于人工智能的代码优化方法、设备及存储介质。
背景技术
代码重构是在不改变软件系统外部行为的前提下,改善它的内部结构。
在现有技术中,一个程序的开发通常需要多位程序员的合作,但是多个程序员之间对于能够达到同一效果的代码的撰写方式不同,这些撰写方式不同的代码组合形成一个程序。在程序需要拓展时,因为初始程序代码的结构不同,导致代码拓展困难。
因此,如何优化代码并统一多段代码的格式成为一个亟待解决的技术问题。
发明内容
本申请实施例提供了一种基于人工智能的代码优化方法、设备及存储介质,用以解决如下技术问题:如何优化代码并统一多段代码的格式。
第一方面,本申请实施例提供了一种基于人工智能的代码优化方法,其特征在于,方法包括:获取组员代码集,并构建初始代码优化模型;其中,组员代码集包括历史组员代码、组员最新代码、组员撰写代码;基于历史组员代码训练初始代码优化模型,以获取适配于组员代码的代码优化模型;基于代码优化模型处理组员撰写代码,并修改组员撰写代码,以获取组员修改代码;在组员撰写代码修改结束后,生成代码审查报告并上传至组员代码平台;其中,组员代码平台包括所有组员的历史组员代码;基于组员代码平台审核代码审查报告和历史组员代码,以生成个性化建议并统一组员撰写代码的结构。
在本申请的一种实现方式中,基于组员代码训练初始代码优化模型,以获取适配于组员代码的代码优化模型,具体包括:基于预设的特征提取算法提取组员代码的代码特征;其中,代码特征包括代码结构、命名规范和异常处理;标记代码特征,以获取训练数据;基于训练数据训练初始代码优化模型,以获取代码优化模型。
在本申请的一种实现方式中,在基于训练数据训练初始代码优化模型,以获取代码优化模型后,方法还包括:提取训练数据的技术特征,并基于训练数据的技术特征标注组员最新代码,以获取标注最新代码;基于标注最新代码训练代码优化模型,以实时更新代码优化模型。
在本申请的一种实现方式中,基于代码优化模型处理组员撰写代码,并修改组员撰写代码,以获取组员修改代码,具体包括:基于代码优化模型内预设的自动走查工具检查组员撰写代码,并基于代码优化模型给出问题程度;其中,问题程度包括轻度问题和严重问题;基于问题程度修复组员撰写代码,以获取组员修改代码。
在本申请的一种实现方式中,基于代码优化模型内预设的自动走查工具检查组员撰写代码,并基于代码优化模型给出问题程度,具体包括:基于预设的代码审查表审查组员撰写代码,在组员撰写代码不包含在代码审查表时,标注组员撰写代码为轻度问题;基于代码优化模型内预设的自然语言处理算法处理组员撰写代码,以确定组员代码是否正确;在组员撰写代码错误时,标注组员撰写代码为重度问题。
在本申请的一种实现方式中,基于问题程度修复组员撰写代码,以获取组员修改代码,具体包括:在问题程度为轻度问题时,基于代码优化模型修复组员撰写代码;在问题程度为重度问题时,基于代码优化模型给出修改意见。
在本申请的一种实现方式中,基于组员代码平台审核代码审查报告和历史组员代码,以生成个性化建议并统一组员撰写代码的结构,具体包括:对比同一组员的多个代码审查报告,以确定同一组员的组员错误集;基于代码优化模型内预设的协同过滤算法处理历史组员代码,以确定代码架构;基于代码架构统一组员撰写代码的架构。
在本申请的一种实现方式中,基于代码优化模型内预设的协同过滤算法处理历史组员代码,以确定代码架构,具体包括:基于协同过滤算法处理历史组员代码,根据代码架构区分历史组员代码,以生成代码架构集;以代码架构种类为基准筛选代码架构集,以确定代码架构。
第二方面,本申请实施例还提供了一种基于人工智能的代码优化设备,其特征在于,设备包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够:获取组员代码集,并构建初始代码优化模型;其中,组员代码集包括历史组员代码、组员最新代码、组员撰写代码;基于历史组员代码训练初始代码优化模型,以获取适配于组员代码的代码优化模型;基于代码优化模型处理组员撰写代码,并修改组员撰写代码,以获取组员修改代码;在组员撰写代码修改结束后,生成代码审查报告并上传至组员代码平台;其中,组员代码平台包括所有组员的历史组员代码;基于组员代码平台审核代码审查报告和历史组员代码,以生成个性化建议并统一组员撰写代码的结构。
第三方面,本申请实施例还提供了一种基于人工智能的代码优化的非易失性计算机存储介质,存储有计算机可执行指令,其特征在于,计算机可执行指令设置为:获取组员代码集,并构建初始代码优化模型;其中,组员代码集包括历史组员代码、组员最新代码、组员撰写代码;基于历史组员代码训练初始代码优化模型,以获取适配于组员代码的代码优化模型;基于代码优化模型处理组员撰写代码,并修改组员撰写代码,以获取组员修改代码;在组员撰写代码修改结束后,生成代码审查报告并上传至组员代码平台;其中,组员代码平台包括所有组员的历史组员代码;基于组员代码平台审核代码审查报告和历史组员代码,以生成个性化建议并统一组员撰写代码的结构。
本申请实施例提供的一种基于人工智能的代码优化方法、设备及存储介质,通过获取同一小组的组员代码和初始代码优化模型,根据组员历史代码训练初始代码优化模型以获取适配于同一小组的代码优化模型,从而能够匹配同一小组所撰写的代码,通过代码优化模型处理同一小组内的代码,优化同一小组内的代码,并统一多段代码的格式。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种基于人工智能的代码优化方法流程图;
图2为本申请实施例提供的一种基于人工智能的代码优化设备内部结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整的描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一种基于人工智能的代码优化方法、设备及存储介质,用以解决如下技术问题:如何优化代码并统一多段代码的格式。
下面通过附图对本申请实施例提出的技术方案进行详细地说明。
图1为本申请实施例提供的一种基于人工智能的代码优化流程图。如图1所示,本申请实施例提供的一种基于人工智能的代码优化方法,具体包括以下步骤:
步骤1、获取组员代码集,并构建初始代码优化模型。
网页、APP的开发,通常需要多人合作开发,即由多人撰写同一程序代码。即将网页、APP分给多人进行合作撰写,该多人通常为一个小组,小组内的成员每人撰写一部分程序,后再将多人撰写的程序组合形成网页、APP。
上述文中“每人撰写一部分程序”即为组员代码,所有组员代码的集和即为组员代码集。
初始代码优化模型为能够检查代码、发现代码错误和给出代码修复意见的模型,初始代码优化模型为神经网络模型的一种。
其中,组员代码集包括历史组员代码、组员最新代码、组员撰写代码。
历史组员代码为组员已经撰写过的代码,用于训练初始代码优化模型并确定组员撰写代码的习惯。
组员最新代码为组员最新一次撰写而成的代码。
组员撰写代码为组员正在进行撰写的代码。
步骤2、基于历史组员代码训练初始代码优化模型,以获取适配于组员代码的代码优化模型。
初始代码优化模型虽然能够检查代码、发现代码错误和给出代码修复意见,但是并不能根据使用者的撰写习惯给出针对性的修复意见,所以需要根据同一小组的历史组员代码训练初始代码优化模型,使得初始代码优化模型能够给出组员针对性的修改意见。
具体训练过程由步骤21至步骤23所示:
步骤21、基于预设的特征提取算法提取组员代码的代码特征。
代码特征包括代码结构、命名规范和异常处理。
代码结构为组员撰写代码的结构分布问题。命名规范为组员撰写代码时对于程序文字的命名,异常处理为代码出现问题时给出的解决方案。
步骤22、标记代码特征,以获取训练数据。
在提取了历史组员代码的代码特征后,需要根据代码特征进行标注,该标注过程为现有技术,在此不作赘述。
步骤23、基于训练数据训练初始代码优化模型,以获取代码优化模型。
在获取了训练数据后,即可根据训练数据训练初始代码优化模型,从而获取代码优化模型。
随着社会的发展,计算机技术快速发展,代码的撰写也在迭代,为了使得代码优化模型能够适应迭代的代码,需要将组员最新撰写的程序持续训练代码优化模型,使得代码优化模型能够使用组员的代码。
具体步骤为提取训练数据的技术特征,并基于训练数据的技术特征标注组员最新代码,以获取标注最新代码。基于标注最新代码训练代码优化模型,以实时更新代码优化模型。
步骤3、基于代码优化模型处理组员撰写代码,并修改组员撰写代码,以获取组员修改代码。
在代码优化模型生成后,即可根据代码优化模型处理组员撰写代码,以优化组员撰写代码时的体验。同时能够在组员撰写代码时修复组员撰写的代码并修改,得到组员修改代码。
步骤31、基于代码优化模型内预设的自动走查工具检查组员撰写代码,并基于代码优化模型给出问题程度。
代码走查是一个开发人员与架构师集中讨论代码的过程。代码走查的目的是交换有关代码是如何书写的思路,并建立一个对代码的标准集体阐述。在代码走查的过程中,开发人员都应该有机会向其他人来阐述他们的代码。通常地,即便是简单的代码阐述也会帮助开发人员识别出错误并预想出对以前麻烦问题的新的解决办法。在现有技术中,代码走查工具较为普遍,在此不做赘述。
在代码审查过程中吗,可发现组员撰写代码的问题,问题程度包括轻度问题和严重问题。具体审查过程如下:基于预设的代码审查表审查组员撰写代码,在组员撰写代码不包含在代码审查表时,标注组员撰写代码为轻度问题。基于代码优化模型内预设的自然语言处理算法处理组员撰写代码,以确定组员代码是否正确。在组员撰写代码错误时,标注组员撰写代码为重度问题。
自然语言处理算法能够结合组员撰写代码的预警,从而能够理解代码的目的,根据代码的目的和代码实际效果给出修改意见。
步骤32、基于问题程度修复组员撰写代码,以获取组员修改代码。
在问题程度为轻度问题时,基于代码优化模型修复组员撰写代码。在问题程度为重度问题时,基于代码优化模型给出修改意见,该修改意见由撰写人员阅读并确定是否使用
步骤4、在组员撰写代码修改结束后,生成代码审查报告并上传至组员代码平台。
代码审查平台用于存储同一小组内所有组员的所有代码和代码审查报告,能够用于存储和记录所有组员的代码。
步骤5、基于组员代码平台审核代码审查报告和历史组员代码,以生成个性化建议并统一组员撰写代码的结构。
在代码审查平台内,记载有同一组员在撰写过程中出现的错误,该错误记录在代码审查报告中,根据代码审查报告即可针对某一组员给出个性化建议。
在具体的事例中,组员撰写的if-else程序的else经常错打为elss,则在代码审查报告中写出该错误次数,并在组员撰写if-else程序时,将该程序标红,并附上文件提醒。
步骤51、对比同一组员的多个代码审查报告,以确定同一组员的组员错误集。
通过对比同一组员的多个代码审查报告,能够得知同一组员出现错误的情况,该错误的情况进行组合即可获取错误集。
该错误集可让组员提升自己的代码撰写水平。
步骤52、基于代码优化模型内预设的协同过滤算法处理历史组员代码,以确定代码架构。
协同过滤算法是在信息过滤和信息系统中的一项技术。能够根据协同所有组员的代码选出距离所有组员在一定程度上最为相近的代码架构,从而使得多个组员撰写的程序在代码架构上相似,为该程序在后续的拓展中提供便利。
具体过程可基于协同过滤算法处理历史组员代码,根据代码架构区分历史组员代码,以生成代码架构集。该代码架构集为多个组员之间撰写代码的架构的集合,以代码架构种类为基准筛选代码架构集,以确定代码架构。确定的代码架构为代码架构集中使用次数最多的代码架构,即可根据该代码架构统一组员撰写代码的架构。
以上为本申请提出的方法实施例。基于同样的发明构思,本申请实施例还提供了一种基于人工智能的代码优化设备,其结构如图2所示。
图2为本申请实施例提供的一种基于人工智能的代码优化设备内部结构示意图。如图2所示,设备包括:
至少一个处理器201;
以及,与至少一个处理器通信连接的存储器202;
其中,存储器202存储有可被至少一个处理器执行的指令,指令被至少一个处理器201执行,以使至少一个处理器201能够:
获取组员代码集,并构建初始代码优化模型;其中,组员代码集包括历史组员代码、组员最新代码、组员撰写代码;基于历史组员代码训练初始代码优化模型,以获取适配于组员代码的代码优化模型;基于代码优化模型处理组员撰写代码,并修改组员撰写代码,以获取组员修改代码;在组员撰写代码修改结束后,生成代码审查报告并上传至组员代码平台;其中,组员代码平台包括所有组员的历史组员代码;基于组员代码平台审核代码审查报告和历史组员代码,以生成个性化建议并统一组员撰写代码的结构。
本申请的一些实施例提供的对应于图1的一种基于人工智能的代码优化的非易失性计算机存储介质,存储有计算机可执行指令,计算机可执行指令设置为:
获取组员代码集,并构建初始代码优化模型;其中,组员代码集包括历史组员代码、组员最新代码、组员撰写代码;基于历史组员代码训练初始代码优化模型,以获取适配于组员代码的代码优化模型;基于代码优化模型处理组员撰写代码,并修改组员撰写代码,以获取组员修改代码;在组员撰写代码修改结束后,生成代码审查报告并上传至组员代码平台;其中,组员代码平台包括所有组员的历史组员代码;基于组员代码平台审核代码审查报告和历史组员代码,以生成个性化建议并统一组员撰写代码的结构。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于物联网设备和介质实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
本申请实施例提供的系统和介质与方法是一一对应的,因此,系统和介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述系统和介质的有益技术效果。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框,以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所做的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (9)
1.一种基于人工智能的代码优化方法,其特征在于,所述方法包括:
获取组员代码集,并构建初始代码优化模型;其中,所述组员代码集包括历史组员代码、组员最新代码、组员撰写代码;
基于所述历史组员代码训练所述初始代码优化模型,以获取适配于组员代码的代码优化模型;
基于所述代码优化模型处理所述组员撰写代码,并修改所述组员撰写代码,以获取组员修改代码;
在所述组员撰写代码修改结束后,生成代码审查报告并上传至组员代码平台;其中,所述组员代码平台包括所有组员的历史组员代码;
基于组员代码平台审核所述代码审查报告和历史组员代码,以生成个性化建议并统一所述组员撰写代码的结构;
基于所述组员代码训练所述初始代码优化模型,以获取适配于组员代码的代码优化模型,具体包括:
基于预设的特征提取算法提取所述组员代码的代码特征;其中,所述代码特征包括代码结构、命名规范和异常处理;
标记所述代码特征,以获取训练数据;
基于所述训练数据训练所述初始代码优化模型,以获取代码优化模型。
2.根据权利要求1所述的一种基于人工智能的代码优化方法,其特征在于,在所述基于所述训练数据训练所述初始代码优化模型,以获取代码优化模型后,所述方法还包括:
提取所述训练数据的技术特征,并基于所述训练数据的技术特征标注所述组员最新代码,以获取标注最新代码;
基于标注最新代码训练所述代码优化模型,以实时更新所述代码优化模型。
3.根据权利要求1所述的一种基于人工智能的代码优化方法,其特征在于,基于所述代码优化模型处理所述组员撰写代码,并修改所述组员撰写代码,以获取组员修改代码,具体包括:
基于所述代码优化模型内预设的自动走查工具检查组员撰写代码,并基于所述代码优化模型给出问题程度;其中,所述问题程度包括轻度问题和严重问题;
基于所述问题程度修复所述组员撰写代码,以获取组员修改代码。
4.根据权利要求3所述的一种基于人工智能的代码优化方法,其特征在于,基于所述代码优化模型内预设的自动走查工具检查组员撰写代码,并基于所述代码优化模型给出问题程度,具体包括:
基于预设的代码审查表审查所述组员撰写代码,在所述组员撰写代码不包含在代码审查表时,标注所述组员撰写代码为轻度问题;
基于所述代码优化模型内预设的自然语言处理算法处理所述组员撰写代码,以确定所述组员代码是否正确;
在所述组员撰写代码错误时,标注所述组员撰写代码为重度问题。
5.根据权利要求4所述的一种基于人工智能的代码优化方法,其特征在于,基于所述问题程度修复所述组员撰写代码,以获取组员修改代码,具体包括:
在所述问题程度为轻度问题时,基于所述代码优化模型修复所述组员撰写代码;
在所述问题程度为重度问题时,基于所述代码优化模型给出修改意见。
6.根据权利要求1所述的一种基于人工智能的代码优化方法,其特征在于,基于组员代码平台审核所述代码审查报告和历史组员代码,以生成个性化建议并统一所述组员撰写代码的结构,具体包括:
对比同一组员的多个所述代码审查报告,以确定所述同一组员的组员错误集;
基于所述代码优化模型内预设的协同过滤算法处理所述历史组员代码,以确定代码架构;
基于所述代码架构统一所述组员撰写代码的架构。
7.根据权利要求6所述的一种基于人工智能的代码优化方法,其特征在于,基于所述代码优化模型内预设的协同过滤算法处理所述历史组员代码,以确定代码架构,具体包括:
基于所述协同过滤算法处理所述历史组员代码,根据代码架构区分所述历史组员代码,以生成代码架构集;
以代码架构种类为基准筛选所述代码架构集,以确定代码架构。
8.一种基于人工智能的代码优化设备,其特征在于,所述设备包括:
至少一个处理器;
以及,与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
获取组员代码集,并构建初始代码优化模型;其中,所述组员代码集包括历史组员代码、组员最新代码、组员撰写代码;
基于所述历史组员代码训练所述初始代码优化模型,以获取适配于组员代码的代码优化模型;
基于所述代码优化模型处理所述组员撰写代码,并修改所述组员撰写代码,以获取组员修改代码;
在所述组员撰写代码修改结束后,生成代码审查报告并上传至组员代码平台;其中,所述组员代码平台包括所有组员的历史组员代码;
基于组员代码平台审核所述代码审查报告和历史组员代码,以生成个性化建议并统一所述组员撰写代码的结构;
基于所述组员代码训练所述初始代码优化模型,以获取适配于组员代码的代码优化模型,具体包括:
基于预设的特征提取算法提取所述组员代码的代码特征;其中,所述代码特征包括代码结构、命名规范和异常处理;
标记所述代码特征,以获取训练数据;
基于所述训练数据训练所述初始代码优化模型,以获取代码优化模型。
9.一种基于人工智能的代码优化的非易失性计算机存储介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令设置为:
获取组员代码集,并构建初始代码优化模型;其中,所述组员代码集包括历史组员代码、组员最新代码、组员撰写代码;
基于所述历史组员代码训练所述初始代码优化模型,以获取适配于组员代码的代码优化模型;
基于所述代码优化模型处理所述组员撰写代码,并修改所述组员撰写代码,以获取组员修改代码;
在所述组员撰写代码修改结束后,生成代码审查报告并上传至组员代码平台;其中,所述组员代码平台包括所有组员的历史组员代码;
基于组员代码平台审核所述代码审查报告和历史组员代码,以生成个性化建议并统一所述组员撰写代码的结构;
基于所述组员代码训练所述初始代码优化模型,以获取适配于组员代码的代码优化模型,具体包括:
基于预设的特征提取算法提取所述组员代码的代码特征;其中,所述代码特征包括代码结构、命名规范和异常处理;
标记所述代码特征,以获取训练数据;
基于所述训练数据训练所述初始代码优化模型,以获取代码优化模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311415387.2A CN117492760B (zh) | 2023-10-27 | 2023-10-27 | 一种基于人工智能的代码优化方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311415387.2A CN117492760B (zh) | 2023-10-27 | 2023-10-27 | 一种基于人工智能的代码优化方法、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117492760A CN117492760A (zh) | 2024-02-02 |
CN117492760B true CN117492760B (zh) | 2024-05-17 |
Family
ID=89677434
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311415387.2A Active CN117492760B (zh) | 2023-10-27 | 2023-10-27 | 一种基于人工智能的代码优化方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117492760B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116088857A (zh) * | 2023-02-16 | 2023-05-09 | 平安壹钱包电子商务有限公司 | 一种代码审查方法及装置、存储介质、计算机设备 |
CN116107589A (zh) * | 2023-03-06 | 2023-05-12 | 上海聚水潭网络科技有限公司 | 软件代码的自动编译方法、装置、设备及存储介质 |
CN116909532A (zh) * | 2023-09-12 | 2023-10-20 | 深圳须弥云图空间科技有限公司 | 一种代码生成与缺陷修复方法和装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2016228166A1 (en) * | 2016-09-13 | 2018-03-29 | Canon Kabushiki Kaisha | Visualisation for guided algorithm design to create hardware friendly algorithms |
US10635409B2 (en) * | 2018-01-15 | 2020-04-28 | Cognizant Technology Solutions India Pvt. Ltd. | System and method for improving software code quality using artificial intelligence techniques |
-
2023
- 2023-10-27 CN CN202311415387.2A patent/CN117492760B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116088857A (zh) * | 2023-02-16 | 2023-05-09 | 平安壹钱包电子商务有限公司 | 一种代码审查方法及装置、存储介质、计算机设备 |
CN116107589A (zh) * | 2023-03-06 | 2023-05-12 | 上海聚水潭网络科技有限公司 | 软件代码的自动编译方法、装置、设备及存储介质 |
CN116909532A (zh) * | 2023-09-12 | 2023-10-20 | 深圳须弥云图空间科技有限公司 | 一种代码生成与缺陷修复方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN117492760A (zh) | 2024-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20150100940A1 (en) | System and method for prioritizing and remediating defect risk in source code | |
de Freitas Farias et al. | Identifying self-admitted technical debt through code comment analysis with a contextualized vocabulary | |
CN110018954B (zh) | 代码质量检测、代码检测质量的评估方法、装置及设备 | |
Hojaji et al. | Model execution tracing: a systematic mapping study | |
Morovati et al. | Bug characterization in machine learning-based systems | |
Bavota et al. | Identifying the weaknesses of UML class diagrams during data model comprehension | |
CN111143228A (zh) | 基于决策表法的测试代码生成方法及装置 | |
CN112948473A (zh) | 数据仓库的数据处理方法、装置、系统及存储介质 | |
Anuar et al. | A simplified systematic literature review: Improving Software Requirements Specification quality with boilerplates | |
Nugroho et al. | The impact of UML modeling on defect density and defect resolution time in a proprietary system | |
Lormans et al. | An industrial case study in reconstructing requirements views | |
CN117492760B (zh) | 一种基于人工智能的代码优化方法、设备及存储介质 | |
Blinman et al. | Program comprehension: investigating the effects of naming style and documentation | |
CN115904480B (zh) | 代码重构方法、装置、电子设备及存储介质 | |
CN112181951A (zh) | 一种异构数据库数据迁移方法、装置及设备 | |
Plösch et al. | Does Static Analysis Help Software Engineering Students? | |
CN113535529B (zh) | 业务日志分析方法、装置及计算机可读存储介质 | |
Khtira et al. | A tool support for automatic detection of duplicate features during software product lines evolution | |
CN114661616A (zh) | 目标代码的生成方法及装置 | |
Rahiman et al. | CopyPoppy–A Source Code Plagiarism Detector | |
Chikh et al. | Towards a dynamic software requirements specification | |
CN109446091B (zh) | 业务实体对象测试方法及装置 | |
CN113392003A (zh) | 编程代码的评价方法及装置 | |
Weigl et al. | A framework for automated verification in software escrow | |
dos Santos et al. | Extraction of test cases procedures from textual use cases: is it worth it? |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |