[发明专利]代码命名方法、系统、计算机装置及计算机可读存储介质在审
申请号: | 201811537719.3 | 申请日: | 2018-12-15 |
公开(公告)号: | CN109828748A | 公开(公告)日: | 2019-05-31 |
发明(设计)人: | 成明 | 申请(专利权)人: | 深圳壹账通智能科技有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30 |
代理公司: | 深圳市赛恩倍吉知识产权代理有限公司 44334 | 代理人: | 杨毅玲 |
地址: | 518052 广东省深圳市前海深港合作区前*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 代码元素 注释关键字 预设 计算机可读存储介质 计算机装置 代码开发 描述信息 相似度 映射表 软件开发效率 代码库 查找 智能 | ||
本发明提供一种代码命名方法、系统、计算机装置及计算机可读存储介质。所述代码命名方法包括:从预设代码库中提取代码元素的命名及与所述代码元素对应的注释关键字;根据每一所述代码元素的命名及对应的注释关键字建立一代码元素名称与注释关键字的映射表;获取待命名的代码元素的描述信息并从所述描述信息提取出描述关键字;从所述映射表中查找与所述描述关键字相似度大于预设阈值的注释关键字;将与所述描述关键字相似度大于所述预设阈值的注释关键字对应的代码元素的命名作为所述待命名的代码元素的推荐命名。本发明可实现智能对代码元素进行命名,为代码开发人员提供代码开发辅助,可提升软件开发效率。
技术领域
本发明涉及软件开发领域,尤其涉及一种代码命名方法、系统、计算机装置及计算机可读存储介质。
背景技术
在软件程序开发过程中,开发人员想要在程序中创建变量、函数等代码元素时,需要在创建这些代码元素之前预先为其进行命名,且名称一般都是英文名称。目前对代码元素的命名都是由开发人员自己手动进行创建,对于非英语的开发者,给函数、类等代码元素进行命名时可能会出现命名不规范,元素名称不能很好的表达代码要完成的工作,且研发人员往往需要耗费较多的时间去思考代码元素的命名,使得代码元素的命名效率较为低下。
发明内容
鉴于上述,本发明提供一种代码命名方法、系统、计算机装置及计算机可读存储介质,其可以实现代码智能命名,提升软件开发效率。
本申请一实施方式提供一种代码命名方法,所述方法包括:
从预设代码库中提取代码元素的命名及与所述代码元素对应的注释关键字,其中所述预设代码库中包含多个代码段,每一所述代码段包括一个或多个代码元素;
根据每一所述代码元素的命名及对应的注释关键字建立一代码元素名称与注释关键字的映射表;
获取待命名的代码元素的描述信息并从所述描述信息提取出描述关键字,其中所述描述信息用于描述所述待命名的代码元素的功能;
从所述映射表中查找与所述描述关键字相似度大于预设阈值的注释关键字;及
将与所述描述关键字相似度大于所述预设阈值的注释关键字对应的代码元素的命名作为所述待命名的代码元素的推荐命名。
优选地,所述代码元素包括以下的一种或者多种:变量、常量、函数、类、文件,所述描述信息为所述待命名的代码元素的注释。
优选地,所述从所述描述信息提取出描述关键字的步骤包括:
对所述描述信息进行分词处理及词性标注,得到与所述描述信息对应的多个分词,其中每一所述分词标注有一词性;
对多个所述分词进行合并去重处理;及
统计每一所述分词在所述描述信息中的TF-IDF信息,并根据所述TF-IDF信息及每一所述分词的预设权重从多个所述分词中选取出一个或者多个分词作为所述描述关键字。
优选地,所述从所述映射表中查找与所述描述关键字相似度大于预设阈值的注释关键字的步骤包括:
利用文本相似度算法计算得到所述映射表中每一所述注释关键字与所述描述关键字的相似度;及
根据计算得到的相似度筛选出与所述描述关键字相似度大于预设阈值的注释关键字。
优选地,所述从所述映射表中查找与所述描述关键字相似度大于预设阈值的注释关键字的步骤之后还包括:
当所述映射表不存在与所述描述关键字相似度大于所述预设阈值的注释关键字时,将所述描述关键字输入至代码命名模型,得到所述待命名的代码元素的推荐命名;
其中,所述代码命名模型是根据所述预设代码库中提取得到的代码元素的命名及注释关键字建立并训练得到。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳壹账通智能科技有限公司,未经深圳壹账通智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811537719.3/2.html,转载请声明来源钻瓜专利网。