[发明专利]一种代码生成方法和装置在审
申请号: | 201810231328.2 | 申请日: | 2018-03-20 |
公开(公告)号: | CN108509201A | 公开(公告)日: | 2018-09-07 |
发明(设计)人: | 许文艳;刘海晶;王培源;高华龙 | 申请(专利权)人: | 深圳神州数码云科数据技术有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 王莹;李相雨 |
地址: | 518131 广东省深圳市南山区粤海*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 服务端 客户端 方法和装置 代码生成 客户端代码 预设 代码生成模块 代码编写 解析模块 命令格式 生成服务 客户 解析 服务 | ||
1.一种代码生成方法,其特征在于,包括:
S1、解析XML配置文件,根据所述XML配置文件中定义的函数的命令格式规范,获取每一客户端对应的参数和每一服务端对应的参数;
S2、对于每一客户端,根据该客户端对应的参数,基于预设的客户端代码的模板,生成该客户端的代码;
对于每一服务端,根据该服务端对应的参数,基于预设的服务端代码的模板,生成该服务端的代码;
其中,所述客户端代码的模板具有一定规范和格式要求,能通过参数配置进行实例化,转换成实际客户端代码;
所述服务端代码的模板具有一定规范和格式要求,能通过参数配置进行实例化,转换成实际服务端代码。
2.根据权利要求1所述的代码生成方法,其特征在于,所述步骤S1进一步包括:
根据所述XML配置文件中定义的函数的命令格式规范,对于定义的每一函数,获取该函数的名称、该函数每一参数的数据类型及输入输出类型,执行该函数的客户端的类型及名称,该函数调用的服务端的类型、名称及调用的该服务端上的命名空间,以及执行该函数的客户端和该函数调用的服务端之间进行通信使用的套接字的名称及类型;
对于每一客户端,将该客户端执行的全部函数的名称、函数全部参数的数据类型及输入输出类型、使用的套接字的名称及类型,以及该客户端的类型及名称,作为该客户端对应的参数;
对于每一服务端,将调用该服务端的全部函数的名称、函数全部参数的数据类型及输入输出类型、使用的套接字的名称及类型,使用的该服务端上的命名空间,以及该服务端的类型及名称,作为该服务端对应的参数。
3.根据权利要求1或2所述的代码生成方法,其特征在于,所述客户端代码的模板和所述服务端代码的模板均包括通信代码框架;所述通信代码框架用于实现根据预设的数据交换格式进行客户端和服务端之间的通信。
4.根据权利要求3所述的代码生成方法,其特征在于,所述预设的数据交换格式为JSON格式。
5.根据权利要求3所述的代码生成方法,其特征在于,所述所述服务端代码的模板还包括:若干个虚基类;
所述虚基类,用于使用户通过创建继承该虚基类的派生类,实现所述XML配置文件中定义的一个函数的功能。
6.一种代码生成装置,其特征在于,包括:
解析模块,用于根据所述XML配置文件中定义的函数的命令格式规范,获取每一客户端对应的参数和每一服务端对应的参数;
代码生成模块,用于对于每一客户端,根据该客户端对应的参数,基于预设的客户端代码的模板,生成该客户端的代码;
对于每一服务端,根据该服务端对应的参数,基于预设的服务端代码的模板,生成该服务端的代码;
其中,所述客户端代码的模板具有一定规范和格式要求,能通过参数配置进行实例化,转换成实际客户端代码;
所述服务端代码的模板具有一定规范和格式要求,能通过参数配置进行实例化,转换成实际服务端代码。
7.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行如权利要求1至5任一所述的方法。
8.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至5任一所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳神州数码云科数据技术有限公司,未经深圳神州数码云科数据技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810231328.2/1.html,转载请声明来源钻瓜专利网。