[发明专利]基于API文档图谱的操作系统智能编程方法及装置有效
申请号: | 202111174889.1 | 申请日: | 2021-10-09 |
公开(公告)号: | CN113849163B | 公开(公告)日: | 2022-10-14 |
发明(设计)人: | 武延军;赵琛;武斌;罗天悦;邵妍洁;吴敬征 | 申请(专利权)人: | 中国科学院软件研究所 |
主分类号: | G06F8/33 | 分类号: | G06F8/33;G06F8/76;G06F8/74;G06N3/04;G06N3/08 |
代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 余长江 |
地址: | 100190 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 api 文档 图谱 操作系统 智能 编程 方法 装置 | ||
本发明公开了一种基于API文档图谱的操作系统智能编程方法及装置,包括根据从源系统及目标系统的API文档中提取的所需信息,分别构建源系统的API文档图谱ADG1及目标系统的API文档图谱ADG2;分别向量化API文档图谱ADG1与API文档图谱ADG2,构建节点表示矩阵及节点表示矩阵基于节点表示矩阵与节点表示矩阵进行API文档图谱ADG1与API文档图谱ADG2的实体对齐任务,得到API映射结果。本发明避免了API文档中有效信息丢失,解决了已有的基于代码的API映射方法存在的代码库不可用、不准确等问题,以及基于文档的API映射方法的信息利用不充分等问题,为后续通过智能编程实现应用程序的跨系统迁移的过程提供支持。
技术领域
本发明属于计算机技术领域,涉及一种基于应用程序编程接口(applicationprogramming interface,API)文档图谱的操作系统智能编程方法及装置。
背景技术
随着计算机和网络技术的发展,应用程序已经成为了人们日常生活和工作中必不可少的存在。无论是在社交、购物、娱乐,还是教育、运动、出行等方面,应用程序都可以为人们提供极大的便利。不过,由于目前市场上具有众多品牌的电子产品供消费者选择,为了尽可能覆盖到更多的系统用户群,同一个应用程序往往需要发布在不同的操作系统平台上。然而,在不同操作系统的环境下重复编写具有相同功能的代码会对人力物力产生极大的浪费。因此,如何能够通过智能化的编程方法来实现这一需求就成为了一个值得研究的具有实际意义的问题。
由于在功能开发的过程中,通常需要对各种不同的API进行调用,以实现对许多现成的软件库的重用,因此如果能够建立两个不同操作系统的API之间的映射关系,就可以智能化的完成从一个系统到另一个系统环境下的应用程序迁移。因而,本发明将针对操作系统的智能化的编程方法的探究转化为了如下问题:在将代码从A系统迁移到B系统的过程中,如何能够智能化地建立起A系统已有代码中所使用的API与B系统API之间的映射关系,实现具有相同能力的API的等价替换。
目前已经有了不少与API映射相关的研究。例如,Zhong等在ICSE 2010会议上介绍的使用两种编程语言中相似的类名及相似的API用法来挖掘语言迁移的API映射规则;Nguyen等在ASE 2014会议上介绍的StaMiner旨在通过从两种编程语言的API的客户端代码的并行语料库中对API用法之间的映射进行统计学习来挖掘API映射;Bui等在FSE 2019会议上介绍的名为SAR的域适应方法可以自动转换和对齐两种不同编程语言和API的向量空间,在对抗性学习前后,分别使用播种和细化方法调整代码嵌入技术。然而,这些基于代码的方法在使用上存在一定的限制,因为包含API用法的代码库可能并不可用,且难以保证它们的准确性;同时,仅通过源代码是无法获取某些有效信息的,例如Swift API的绑定类型。其他也有一些基于API文档的方法,例如,Pandita等在SCAM 2015中提出的TMAP:首先从API文档中提取必要的信息;然后为每个API构建一个索引器,并使用术语频率-逆文档频率(term frequency–inverse document frequency,TF-IDF)提取前k个关键字构建查询;最终,搜索器会查询所有关键字相同的API,并根据余弦相似度对结果进行排名。但这些方法并未对文档中的丰富信息加以充分利用。
发明内容
本发明的技术解决问题:克服现有技术的不足,提供一种基于API文档图谱的操作系统智能编程方法及装置,在代码迁移过程中,分别以两个不同的操作系统为源和目标系统,提高对API文档中信息的利用率,进而提高API映射的准确率以及智能化编程的效率。
为了实现上述发明目的,本发明采用如下技术方案:
一种基于API文档图谱的操作系统智能编程方法,其步骤包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院软件研究所,未经中国科学院软件研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111174889.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于机器学习的钢筋混凝土构件抗撞性能预测方法
- 下一篇:一种陶瓷衬里球阀