[发明专利]跨编程语言接口转换的方法和装置有效
申请号: | 201710959210.7 | 申请日: | 2017-10-16 |
公开(公告)号: | CN107832045B | 公开(公告)日: | 2021-03-30 |
发明(设计)人: | 郑伟强;王德俊 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/33 |
代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 张一军;杨晓伟 |
地址: | 100195 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 编程 语言 接口 转换 方法 装置 | ||
本发明公开了跨编程语言接口转换的方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:根据源语言接口描述类生成IDL文件;对所述IDL文件进行编辑;基于编辑后的所述IDL文件生成目标语言接口描述类。该实施方式通过对IDL文件的编辑,能够避免在跨编程语言接口转换时生成过多冗余的代码;减少修改过程中的重复性工作;增加了跨编程语言接口转换过程的可控性和灵活度;有效解决不同编程语言在代码转换过程中的多态问题。
技术领域
本发明涉及计算机技术领域,尤其涉及一种跨编程语言接口转换的方法和装置。
背景技术
随着计算机技术的发展,人们的生活越来越依赖计算机技术,为满足各种各样的需求,功能各异的系统程序应运而生。在系统程序开发过程中经常出现跨部门合作协同开发的情况,由于部门间使用不同的编程语言,因此在协同开发的过程中,有很多跨编程语言的接口调用场景。
目前,不同的编程语言的接口协议转换可以根据服务方和调用方的接口描述类的结构相似性使用工具自动生成。服务方对外提供的接口标准可以通过接口定义类来表示,代码转换工具加载接口定义类,获取接口定义类中包含的接口定义和相关对象的声明,然后再转换成目标编程语言的文件。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
1.因为调用方只需要服务方提供部分接口和对象,由于生成工具无法识别调用方需要哪些接口和对象,导致代码生成后会有过多冗余的代码;
2.调用方因业务需要对部分代码进行自定义调整,直接对自动生成的代码进行修改存在大量重复性工作;
3.接口返回的对象实例可能存在多态情况,即在接口描述类中返回的对象声明是一个父类,但实际返回的可能是该父类的子类,并且可能返回的对象实例有多个子类,导致目标语言的接口描述类无法获取返回的真实类型,使得接口调用后无法序列化返回结果。
发明内容
有鉴于此,本发明实施例提供一种跨编程语言接口转换的方法和装置,能够避免在跨编程语言接口转换时生成过多冗余的代码;减少修改过程中的重复性工作;增加了跨编程语言接口转换过程的可控性和灵活度;有效解决不同编程语言在代码转换过程中的多态问题。
为实现上述目的,根据本发明实施例的一个方面,提供了一种跨编程语言接口转换的方法。
本发明实施例的一种跨编程语言接口转换的方法包括:根据源语言接口描述类生成IDL文件;对所述IDL文件进行编辑;基于编辑后的所述IDL文件生成目标语言接口描述类。
可选地,根据源语言接口描述类生成IDL文件包括:获取所述源语言接口描述类的类定义信息或接口函数定义信息;根据所述类定义信息或所述接口函数定义信息生成所述IDL文件。
可选地,对所述IDL文件进行编辑包括以下各项中的至少一项:增加所述IDL文件的内容;删除所述IDL文件的内容;修改所述IDL文件的内容;在所述IDL文件中添加注解。
可选地,所述注解包括注释、扩展字段或版本号。
可选地,基于编辑后的所述IDL文件生成目标语言接口描述类包括:获取编辑后的所述IDL文件中的所述类定义信息、所述接口函数定义信息或所述注解;基于静态模版技术生成目标语言接口描述类。
为实现上述目的,根据本发明的另一方面,提供了一种跨编程语言接口转换的装置。
本发明实例的一种跨编程语言接口转换的装置包括:第一生成模块,用于根据源语言接口描述类生成IDL文件;编辑模块,用于对所述IDL文件进行编辑;第二生成模块,用于基于编辑后的所述IDL文件生成目标语言接口描述类。
可选地,所述第一生成模块还用于:获取所述源语言接口描述类的类定义信息或接口函数定义信息;根据所述类定义信息或所述接口函数定义信息生成所述IDL文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710959210.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于软件元模型构造的通用软件建模方法
- 下一篇:数据生成方法及装置