掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本申请涉及代码语句推荐技术领域,尤其涉及一种代码语句推荐方法、装置、电子设备及存储介质。

背景技术

本部分旨在为权利要求书中陈述的本申请的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。

目前,在各种代码语句的编写中,主要通过用户人工进行输入,而单纯的通过人工进行代码语句的编写,不仅效率较低,而且容易出现错误,为后续代码运行测试带来不便。例如,当数据库中的两个数据表a和b需要通过代码语句来实现二者联合查询时,若用户手动完成编写,不仅效率不高且容易出现错误。

发明内容

有鉴于此,本申请的目的在于提出一种代码语句推荐方法、装置、电子设备及存储介质。

基于上述目的,本申请提供了一种代码语句推荐方法,包括:

响应于接收到包括预设语句的目标代码语句,从数据库中确定包括所述目标代码语句的历史代码语句;

获取当前日期信息,并基于所述当前日期信息对所述历史代码语句中的历史日期信息进行修改,得到修正历史代码语句;

向输入所述目标代码语句的用户推荐所述修正历史代码语句。

在一些实施例中,在向输入所述目标代码语句的用户推荐所述修正历史代码语句之后,所述方法还包括:

响应于接收到所述用户从所述修正历史代码语句中确定目标修正历史代码语句的确定指令,在所述数据库中将所述目标修正历史代码语句对应的历史代码语句的使用频次增加预设频次。

在一些实施例中,在向输入所述目标代码语句的用户推荐所述修正历史代码语句之后,所述方法还包括:

响应于未接收到所述用户从所述修正历史代码语句中确定目标修正历史代码语句的确定指令,且接收到所述用户输入的未存在于所述数据库中的其他代码语句,将所述其他代码语句以及所述目标代码语句保存到所述数据库中。

在一些实施例中,所述数据库中还包括所述历史代码语句的上传日期信息,基于所述当前日期信息对所述历史代码语句中的历史日期信息进行修改,具体包括:

获取所述历史代码语句的上传日期信息,并确定所述上传日期信息与所述历史日期信息的第一日期差值;

基于所述第一日期差值以及所述当前日期信息对所述历史日期信息进行修改。

在一些实施例中,在响应于接收到所述用户从所述修正历史代码语句中确定目标修正历史代码语句的确定指令之后,所述方法还包括:

响应于确定所述目标修正历史代码语句中的日期信息被修改,获取修改后的所述目标修正历史代码语句中的日期信息;

确定修改后的所述目标修正历史代码语句中的日期信息与所述当前日期信息的第二日期差值,并将所述第二日期差值保存至所述数据库中。

在一些实施例中,所述数据库中还包括所述历史代码语句的多个第三日期差值及每个第三日期差值的使用频次,其中,所述第三日期差值为所述历史代码语句被使用时的实际日期与其被使用时的当天日期的差值;基于所述当前日期信息对所述历史代码语句中的历史日期信息进行修改,具体包括:

获取所述多个第三日期差值以及所述每个第三日期差值的使用频次;

从所述多个第三日期差值中确定出使用频次最多的目标日期差值;

基于所述目标日期差值以及所述当前日期信息对所述历史代码语句中的历史日期信息进行修改。

在一些实施例中,所述数据库中包括多个所述历史代码语句;向输入所述目标代码语句的用户推荐所述修正历史代码语句,具体包括:

获取每个所述历史代码语句的使用频次;

基于每个所述历史代码语句的使用频次生成由多个所述修正历史代码语句组成的推荐列表;

向所述输入所述目标代码语句的用户推荐所述推荐列表。

在一些实施例中,所述数据库中还包括每个所述历史代码语句的输入部门信息;在向所述输入所述目标代码语句的用户推荐所述推荐列表之前,向输入所述目标代码语句的用户推荐所述修正历史代码语句,具体还包括:

获取所述用户的目标部门信息以及每个所述历史代码语句的所述输入部门信息;

响应于所述输入部门信息中存在与所述目标部门信息部门相同的目标输入部门信息,调整所述推荐列表中与所述目标输入部门信息对应的所述修正历史代码语句的显示状态。

在一些实施例中,调整所述推荐列表中与所述目标输入部门信息对应的所述修正历史代码语句的显示状态,具体包括:

将所述推荐列表中与所述目标输入部门信息对应的所述修正历史代码语句的显示颜色设置为预设颜色。

在一些实施例中,所述数据库中还包括所述历史代码语句的上一次被使用的日期信息,在向所述输入所述目标代码语句的用户推荐所述推荐列表之前,向输入所述目标代码语句的用户推荐所述修正历史代码语句,具体还包括:

获取每个所述历史代码语句的上一次被使用的日期信息;

从多个所述上一次被使用的日期信息中确定距离所述当前日期信息日期最近的目标日期信息;

将所述目标日期信息对应的所述历史代码语句置于所述推荐列表的顶部。

基于同一发明构思,本申请示例性实施例还提供了一种代码语句推荐装置,包括:

确定模块,响应于接收到包括预设语句的目标代码语句,从数据库中确定包括所述目标代码语句的历史代码语句;

修改模块,获取当前日期信息,并基于所述当前日期信息对所述历史代码语句中的历史日期信息进行修改,得到修正历史代码语句;

推荐模块,向输入所述目标代码语句的用户推荐所述修正历史代码语句。

基于同一发明构思,本申请示例性实施例还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可由所述处理器执行的计算机程序,所述处理器执行所述程序时实现如上所述的代码语句推荐方法。

基于同一发明构思,本申请示例性实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行如上所述的代码语句推荐方法。

从上面所述可以看出,本申请提供的代码语句推荐方法、装置、电子设备及存储介质,响应于接收到包括预设语句的目标代码语句,从数据库中确定包括所述目标代码语句的历史代码语句;获取当前日期信息,并基于所述当前日期信息对所述历史代码语句中的历史日期信息进行修改,得到修正历史代码语句;向输入所述目标代码语句的用户推荐所述修正历史代码语句,从而在检测到用户正在输入包括预设语句的目标代码语句时,从数据库中查找包含相同语句的历史代码语句,并将历史代码语句的日期进行修改后推荐给用户,以便用户可以直接使用推荐的代码语句,提高了代码编写的效率,并且减少了代码语句的错误率。

附图说明

为了更清楚地说明本申请或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例的一种应用场景示意图;

图2为本申请实施例的一种代码语句推荐方法的流程示意图;

图3为本申请实施例的一种代码语句推荐装置的结构示意图;

图4为本申请实施例的一种具体的电子设备的结构示意图。

具体实施方式

下面将参考若干示例性实施方式来描述本申请的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本申请,而并非以任何方式限制本申请的范围。相反,提供这些实施方式是为了使本申请更加透彻和完整,并且能够将本申请的范围完整地传达给本领域的技术人员。

根据本申请的实施方式,提出了一种代码语句推荐方法、装置、电子设备及存储介质。

在本文中,需要理解的是,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。

下面参考本申请的若干代表性实施方式,详细阐释本申请的原理和精神。

发明概述

本申请的发明人发现目前相关技术中,在各种代码语句的编写中,主要通过用户人工进行输入,而单纯的通过人工进行代码语句的编写,不仅效率较低,而且容易出现错误,例如,当数据库中的两个数据表a和b需要通过代码语句来实现二者联合查询时,若用户手动完成编写,不仅效率不高且容易出现错误。但是,数据库中有很多数据表,通过代码语句对两个数据表a和b进行联合查询时,有时用户可能写“a join b on a.account=b.account”,有时用户可能写“ajoin b on a.role=b.role”,有时用户可能写“a join bon a.role=b.role and a.day='2022-01-12'”。因此,如果只是单纯的根据两个数据表自身的信息来推测用户接下来怎么写联表代码语句是十分困难的。

为了解决上述问题,本申请提供了一种代码语句推荐方法,具体包括:

将每个用户编写的代码语句保存在数据库中,当检测到用户正在输入包括预设语句的目标代码语句时,从数据库中查找包含相同语句的历史代码语句,并将历史代码语句的日期进行修改后推荐给用户,以便用户可以直接使用推荐的代码语句,提高了代码编写的效率,并且减少了代码语句的错误率。

在介绍了本申请的基本原理之后,下面具体介绍本申请的各种非限制性实施方式。

应用场景总览

在一些具体的应用场景中,本申请的代码语句推荐方法可以应用于各种撰写代码语句的系统中。

参考图1,为本申请实施例的一种应用场景示意图,其中,用户通过用户端01进行日常的代码语句编写,并将编写好的代码语句发送给数据库02,由数据库02进行保存,然后当检测到用户通过用户端01编写包括预设语句的目标代码语句时,从数据库02中确定查找包含相同语句的历史代码语句,并将历史代码语句的日期进行修改后推荐给用户端02,用户可以直接在推荐的历史代码语句中选择自己需要的代码语句,从而不用手动进行代码语句的编写。

下面结合具体的应用场景,来描述根据本申请示例性实施方式的代码语句推荐方法。需要注意的是,上述应用场景仅是为了便于理解本申请的精神和原理而示出,本申请的实施方式在此方面不受任何限制。相反,本申请的实施方式可以应用于适用的任何场景。

示例性方法

参考图2,本申请实施例提供了一种代码语句推荐方法,包括以下步骤:

S101,响应于接收到包括预设语句的目标代码语句,从数据库中确定包括所述目标代码语句的历史代码语句。

具体实施时,当接收到包括预设语句的目标代码语句时,从数据库中确定包括所述目标代码语句的历史代码语句。可选的,预设语句可以根据需要进行设置,一般情况下,可以按照各个代码语句的使用频次来设置预设语句。例如,在关联两个数据表时,经常使用“x join y…”因此,可以将“join”设置为预设语句,将包含“join”的代码语句识别为目标代码语句。这里的目标代码语句主要指包括了预设语句的代码语句。可选的,每次用户进行代码语句输入时,都可以将输入的代码语句保存到数据库中,并作为历史代码语句。为了提高数据库中保存的历史代码语句的利用率,可以只保存包括预设语句的代码语句。可选的,数据库可以设置在本地的用户端,也可以设置在服务器中,对此不做限定。可选的,数据库可以从多个用户端获取代码语句进行保存,也可以只获取本地用户端的代码语句,对此不做限定。可选的,在确定代码语句是否包括预设语句时,可以采用正则表达式匹配、字符串遍历、AST技术(抽象语法树)等其他技术手段。

需要说明的是,用户在编写代码时,有些代码语句属于常用代码语句,这时可以将常用代码语句中的部分语句作为预设语句。由于这些语句使用的频次比较高,所以保存在数据库中的利用率也较高,且也容易在数据库中查找到相同的历史代码语句,而没有包括预设语句的不常用代码语句,可能平时很少有人编写,因此,监测这部分不常用的代码语句,不仅效率较低,而且会占用数据库的内存。

S102,获取当前日期信息,并基于所述当前日期信息对所述历史代码语句中的历史日期信息进行修改,得到修正历史代码语句。

具体实施时,从数据库中获得的历史代码语句的日期信息大部分与当前用户想要重新输入的日期信息不同,因此,为了避免用户进一步对历史代码语句中的日期信息进行手动修改,以便用户可以直接使用推荐的历史代码语句。在数据库中确定包括所述目标代码语句的历史代码语句后,获取当前日期信息,并根据当前日期信息对所述历史代码语句中的历史日期信息进行修改,得到修正历史代码语句。可选的,可以直接将历史日期信息修改为当前日期信息。

为了更加准确的对所述历史代码语句中的历史日期信息进行修改,在一些实施例中,所述数据库中还包括所述历史代码语句的上传日期信息,基于所述当前日期信息对所述历史代码语句中的历史日期信息进行修改,具体包括:

获取所述历史代码语句的上传日期信息,并确定所述上传日期信息与所述历史日期信息的第一日期差值;

基于所述第一日期差值以及所述当前日期信息对所述历史日期信息进行修改。

具体实施时,由于有时用户想要输入的代码语句的日期信息并不与当前日期信息相同,即并不需要输入今天的日期,且可能需要输入的是昨天的日期。考虑到这种情况,发明人发现,对于两个作用相同的代码语句,二者想要输入的日期信息一般与输入当天的日期有关,例如,一个月前,某用户输入了一条代码语句,该代码语句输入的日期信息是输入当天日期的前一天,即二者相差的第一日期差值为1,则在当前日期,若某用户想要输入一个与一个月前的代码语句功能相同的代码语句,此时,该用户想要输入的日期也应该是当前日期的前一天。因此,本实施例中,通过所述上传日期信息与所述历史日期信息的第一日期差值,以及所述当前日期信息对所述历史日期信息进行修改。

为了进一步提高历史日期信息修改的准确率,在一些实施例中,所述数据库中还包括所述历史代码语句的多个第三日期差值及每个第三日期差值的使用频次,其中,所述第三日期差值为所述历史代码语句被使用时的实际日期与其被使用时的当天日期的差值;基于所述当前日期信息对所述历史代码语句中的历史日期信息进行修改,具体包括:

获取所述多个第三日期差值以及所述每个第三日期差值的使用频次;

从所述多个第三日期差值中确定出使用频次最多的目标日期差值;

基于所述目标日期差值以及所述当前日期信息对所述历史代码语句中的历史日期信息进行修改。

具体实施时,本实施例的数据库中保存了每个历史代码语句的多个第三日期差值及每个第三日期差值的使用频次,该第三差值为所述历史代码语句被使用时的实际日期与其被使用时的当天日期的差值,例如,某历史代码语句推荐给用户后,用户在实际使用该历史代码语句时,将该历史代码语句的日期信息修改为“2022年7月28日”,该“2022年7月28日”即为所述实际日期,若用户使用该历史代码信息的当天日期为“2022年7月29日”,则此时的第三日期差值为1,同时,数据库会为该第三日期差值(这里为1)增加一次使用频次。通过在数据库中记录多个第三日期差值及每个第三日期差值的使用频次,就可以从中选出使用平次最多的目标日期差值,然后根据该目标日期差值以及所述当前日期信息对所述历史代码语句中的历史日期信息进行修改。

在一些实施例中,在响应于接收到所述用户从所述修正历史代码语句中确定目标修正历史代码语句的确定指令之后,所述方法还包括:

响应于确定所述目标修正历史代码语句中的日期信息被修改,获取修改后的所述目标修正历史代码语句中的日期信息;

确定修改后的所述目标修正历史代码语句中的日期信息与所述当前日期信息的第二日期差值,并将所述第二日期差值保存至所述数据库中。

具体实施时,在将所述第二日期差值保存至所述数据库中时,若确定所述数据库中已经存在相同的历史代码语句的该第二日期差值,不再重复保存,并增加该第二日期差值的使用频次。

S103,向输入所述目标代码语句的用户推荐所述修正历史代码语句。

具体实施时,在对历史代码语句完成日期信息修改后,向输入所述目标代码语句的用户推荐所述修正历史代码语句,以便用户从中选择出自己需要的代码语句,从而避免用户手动进行代码语句的输入。

在一些实施例中,在向输入所述目标代码语句的用户推荐所述修正历史代码语句之后,所述方法还包括:

响应于接收到所述用户从所述修正历史代码语句中确定目标修正历史代码语句的确定指令,在所述数据库中将所述目标修正历史代码语句对应的历史代码语句的使用频次增加预设频次。

具体实施时,为了配合下次其他用户再次使用所述目标修正历史代码语句对应的历史代码语句时,可以将该历史代码语句对应的修改历史代码语句放置在推荐列表更靠前的位置,从而提高那些经常被使用的历史代码语句的容易被找到程度,每次用户确定了目标修正历史代码语句后,都会在所述数据库中将所述目标修正历史代码语句对应的历史代码语句的使用频次增加预设频次。可选的,预设频次可以根据需要进行设置,例如,可以将预设频次设置为1次。

在一些实施例中,在向输入所述目标代码语句的用户推荐所述修正历史代码语句之后,所述方法还包括:

响应于未接收到所述用户从所述修正历史代码语句中确定目标修正历史代码语句的确定指令,且接收到所述用户输入的未存在于所述数据库中的其他代码语句,将所述其他代码语句以及所述目标代码语句保存到所述数据库中。

具体实施时,当未接收到所述用户从所述修正历史代码语句中确定目标修正历史代码语句的确定指令,且接收到所述用户输入的未存在于所述数据库中的其他代码语句时,将所述其他代码语句以及所述目标代码语句保存到所述数据库中,以便于下次有其他用户想要输入该其他代码语句时可以从数据库中查找到该其他代码语句。

在一些实施例中,所述数据库中包括多个所述历史代码语句;向输入所述目标代码语句的用户推荐所述修正历史代码语句,具体包括:

获取每个所述历史代码语句的使用频次;

基于每个所述历史代码语句的使用频次生成由多个所述修正历史代码语句组成的推荐列表;

向所述输入所述目标代码语句的用户推荐所述推荐列表。

具体实施时,为了便于用户可以从多个历史代码语句中找到自己需要的代码语句,根据每个历史代码语句的使用频次生成由多个所述修正历史代码语句组成的推荐列表,可选的,历史代码语句的使用频次越高,历史代码语句在推荐列表中的位置越靠前(上)。

在一些实施例中,所述数据库中还包括每个所述历史代码语句的输入部门信息;在向所述输入所述目标代码语句的用户推荐所述推荐列表之前,向输入所述目标代码语句的用户推荐所述修正历史代码语句,具体还包括:

获取所述用户的目标部门信息以及每个所述历史代码语句的所述输入部门信息;

响应于所述输入部门信息中存在与所述目标部门信息部门相同的目标输入部门信息,调整所述推荐列表中与所述目标输入部门信息对应的所述修正历史代码语句的显示状态。

具体实施时,每个历史代码语句均对应一个部门信息,即输入该代码语句的用户所属的部门信息。一般情况下,相同部门的用户输入的代码语句更接近,为了使用户更容易从多个历史代码语句中找到和自己部门相同的同事输入的历史代码语句,可以调整所述推荐列表中与所述目标输入部门信息对应的所述修正历史代码语句的显示状态。可选的,可以通过调节字体的大小或者改变代码语句在推荐列表中的位置等手段来实现显示状态的调整。

为了便于区分,在一些实施例中,调整所述推荐列表中与所述目标输入部门信息对应的所述修正历史代码语句的显示状态,具体包括:

将所述推荐列表中与所述目标输入部门信息对应的所述修正历史代码语句的显示颜色设置为预设颜色。

具体实施时,预设颜色可以根据需要进行设置,在此不做限定。一般情况下,预设颜色与代码语句的默认显示颜色不同。

在一些实施例中,所述数据库中还包括所述历史代码语句的上一次被使用的日期信息,在向所述输入所述目标代码语句的用户推荐所述推荐列表之前,向输入所述目标代码语句的用户推荐所述修正历史代码语句,具体还包括:

获取每个所述历史代码语句的上一次被使用的日期信息;

从多个所述上一次被使用的日期信息中确定距离所述当前日期信息日期最近的目标日期信息;

将所述目标日期信息对应的所述历史代码语句置于所述推荐列表的顶部。

具体实施时,考虑到最近使用的历史代码语句可能与当前用户想要输入的代码语句可能更接近,因此,本实施例从多个所述上一次被使用的日期信息中确定距离所述当前日期信息日期最近的目标日期信息,并将所述目标日期信息对应的所述历史代码语句置于所述推荐列表的顶部。

在一些实施例中,在向所述输入所述目标代码语句的用户推荐所述推荐列表之前,向输入所述目标代码语句的用户推荐所述修正历史代码语句,具体还包括:

响应于确定所述历史代码语句中包括预设特殊语句,在所述推荐列表中,对该包括所述预设特殊语句的所述历史代码语句进行标注。可选的,该预设特殊语句可以根据需要进行设置,例如可以将一些具有重要含义的代码语句设置为预设特殊语句,例如在关联数据表a和b的代码语句中出现的其他数据表c、d…。可选的,所述标注的方法包括在历史代码语句的前方或后方添加特殊字符,该特殊字符可以根据需要进行设置,对此不做限定,例如星星字符。可选的,还可以根据所述历史代码语句中包括预设特殊语句的数量来确定所述特殊字符的数量。

本申请提供的代码语句推荐方法,响应于接收到包括预设语句的目标代码语句,从数据库中确定包括所述目标代码语句的历史代码语句;获取当前日期信息,并基于所述当前日期信息对所述历史代码语句中的历史日期信息进行修改,得到修正历史代码语句;向输入所述目标代码语句的用户推荐所述修正历史代码语句,从而在检测到用户正在输入包括预设语句的目标代码语句时,从数据库中查找包含相同语句的历史代码语句,并将历史代码语句的日期进行修改后推荐给用户,以便用户可以直接使用推荐的代码语句,提高了代码编写的效率,并且减少了代码语句的错误率。

示例性设备

基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种代码语句推荐装置。

参考图3,所述代码语句推荐装置,包括:

确定模块201,响应于接收到包括预设语句的目标代码语句,从数据库中确定包括所述目标代码语句的历史代码语句;

修改模块202,获取当前日期信息,并基于所述当前日期信息对所述历史代码语句中的历史日期信息进行修改,得到修正历史代码语句;

推荐模块203,向输入所述目标代码语句的用户推荐所述修正历史代码语句。

为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本申请时可以把各模块的功能在同一个或多个软件和/或硬件中实现。

上述实施例的装置用于实现前述任一实施例中相应的代码语句推荐方法,并且具有相应的方法实施例的有益效果,在此不再赘述。

基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的代码语句推荐方法。

图4示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。

处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。

存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。

输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。

通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。

总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。

需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。

上述实施例的电子设备用于实现前述任一实施例中相应的代码语句推荐方法,并且具有相应的方法实施例的有益效果,在此不再赘述。

示例性程序产品

基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的代码语句推荐方法。

本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。

上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的一种代码语句推荐方法,并且具有相应的方法实施例的有益效果,在此不再赘述。

所在领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本申请的范围(包括权利要求)被限于这些例子;在本申请的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本申请实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。

另外,为简化说明和讨论,并且为了不会使本申请实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本申请实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本申请实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本申请的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本申请实施例。因此,这些描述应被认为是说明性的而不是限制性的。

尽管已经结合了本申请的具体实施例对本申请进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。

本申请实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本申请实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本申请的保护范围之内。

技术分类

06120115929507