本申请实施例属于研发领域,应用于服务SDK协同开发领域中,涉及一种标准化服务SDK自动化生成方法及其相关设备,包括获取API源码中的注解信息;从中筛选出方法注解描述,将方法注解描述生成唯一标记的数据;并以描述对象存储到预设数据库;将描述对象打包并展示到预设开发协同界面;根据目标描述对象生成对应的代码程序,并将所述代码程序上传至预设位置,供二次开发者下载使用。本申请通过一个中间对象即描述对象,实现多开发者间的开发协调管理,避免了对程序源代码的多次上传和下载操作,使得开发协同界面的API文档始终处于第一版本状态,为不同平台提供一个统一标准的服务SDK自动化生成方法,保证API文档版本的统一性和易维护性。和易维护性。和易维护性。
【技术实现步骤摘要】
标准化服务SDK自动化生成方法及其相关设备
[0001]本申请涉及服务SDK协同开发
,尤其涉及一种标准化服务SDK自动化生成方法及其相关设备。
技术介绍
[0002]现在大多数混合式开发的客户端APP有很多的对外服务接口,例如金融场景中有关保险业务的开发,由于保险险种和业务项目的繁杂性,需要开发很多对外服务接口,目前的开发情况是这样的,客户端提供了大量的对外方法,但对外服务的方法没有统一,也没有任何注释表明方法的作用,很多情况下每重复注册一遍,就需要重复发布一遍,但很多对外方法却仅限于几个人知道,靠口口相传,或者维护一个公共的API文档进行对外方法维护。
[0003]API文档若是独立于运行的代码之外,无论是采用Word、Excel,网页直输等脱离代码的方式,容易出现API文档版本众多,维护和发布困难,代码变更后文档说明与代码功能不一致等问题,并且极易出现因人工书写错误,可靠性低,这对对接方和二次开发者及其不友好,因此,目前服务SDK开发过程中存在API文档版本不统一,经不同开发人员进行多次更改后,易造成维护困难、发布困难的问题。
技术实现思路
[0004]本申请实施例的目的在于提出一种标准化服务SDK自动化生成方法及其相关设备,以便于为不同平台提供一个统一标准的服务SDK自动化生成方法,保证API文档版本的统一性和易维护性。
[0005]为了解决上述技术问题,本申请实施例提供一种标准化服务SDK自动化生成方法,采用了如下所述的技术方案:
[0006]一种标准化服务SDK自动化生成方法,包括下述步骤:
[0007]根据预设注解处理器,获取API源码中的注解信息,其中,所述注解信息指为实现所述API源码自动化部署和生成软件开发工具包而预先编写的注解文本;
[0008]从所述注解信息中筛选出所述API源码中的方法注解描述,并根据预设转码规则,将所述方法注解描述生成唯一标记的数据;
[0009]将所述唯一标记的数据和所述唯一标记的数据对应的描述对象存储到预设数据库;
[0010]接收为生成目标服务对应的软件开发工具包而发出的打包指令,对所述打包指令进行解析,获得解析结果;
[0011]根据预设不同打包条件和所述解析结果,将所述软件开发工具包打包并展示到预设开发协同界面;
[0012]基于预设监测组件,监测到所述开发协同界面中为获取所述目标服务对应的软件开发工具包而发出的提取指令后,根据预设代码生成器生成所述软件开发工具包所对应的代码程序,并将所述代码程序上传至预设位置,供二次开发者下载使用。
[0013]进一步的,所述从所述注解信息中筛选出所述API源码中的方法注解描述,并根据预设转码规则,将所述方法注解描述生成唯一标记的数据的步骤,具体包括:
[0014]获取筛选出的所述API源码中所有的方法注解描述;
[0015]将所述所有的方法注解描述作为一个整体对象,进行序列化处理,获取序列化处理结果;
[0016]将所述序列化处理结果作为输入流进行MD5值处理,获取MD5值,将所述MD5值作为所述唯一标记的数据,为所述MD5值设置唯一标识作为所述描述对象。
[0017]进一步的,所述将所述唯一标记的数据和所述唯一标记的数据对应的描述对象存储到预设数据库的步骤,具体包括:
[0018]将所述MD5值作为哈希值,将所述描述对象作为与所述哈希值相匹配的哈希对象,成对缓存入所述预设数据库,其中,所述描述对象可以按照开发时的包名、类名、方法名、返回值进行逐级拼接命名。
[0019]进一步的,在所述将所述MD5值作为哈希值,将所述描述对象作为与所述哈希值相匹配的哈希对象,成对缓存入所述预设数据库的步骤之后,所述方法还包括:
[0020]在所述预设数据库中生成一个和所述MD5值相对应的自增式版本号信息;
[0021]为所述MD5值、所述描述对象和所述版本号信息建立关联关系,并为所述MD5值、所述描述对象和所述版本号信息分别设置对应的入库时间戳。
[0022]进一步的,所述为生成目标服务对应的软件开发工具包而发出的打包指令中包括所述软件开发工具包的打包路径,所述接收为生成目标服务对应的软件开发工具包而发出的打包指令,对所述打包指令进行解析,获得解析结果的步骤,具体包括:
[0023]在接收到所述打包指令之后,对所述打包指令进行解析,获取所述打包路径。
[0024]进一步的,所述根据预设不同打包条件和所述解析结果,将所述软件开发工具包打包并展示到预设开发协同界面的步骤,具体包括:
[0025]根据所述打包路径和所述不同打包条件,将所述MD5值对应的所述自增式版本号信息展示到所述开发协同界面,其中,所述不同打包条件指打包时所使用的不同压缩工具。
[0026]进一步的,所述根据预设代码生成器生成所述软件开发工具包所对应的代码程序的步骤,具体包括:
[0027]预先定义所述代码生成器的通用方法协议;
[0028]获取目标描述对象对应的方法调用数组,其中,所述方法调用数组中包括:方法名、调用参数和返回值;
[0029]对所述方法调用数组进行解析,获取方法名、调用参数和返回值;
[0030]将所述方法名、调用参数和返回值作为所述通用方法协议的入参参数,调用所述代码生成器,生成所述软件开发工具包所对应的代码程序。
[0031]为了解决上述技术问题,本申请实施例还提供一种标准化服务SDK自动化生成装置,采用了如下所述的技术方案:
[0032]一种标准化服务SDK自动化生成装置,包括:
[0033]注解信息获取模块,用于根据预设注解处理器,获取API源码中的注解信息,其中,所述注解信息指为实现所述API源码自动化部署和生成软件开发工具包而预先编写的注解文本;
[0034]方法注解转码模块,用于从所述注解信息中筛选出所述API源码中的方法注解描述,并根据预设转码规则,将所述方法注解描述生成唯一标记的数据;
[0035]中间对象存储模块,用于将所述唯一标记的数据和所述唯一标记的数据对应的描述对象存储到预设数据库;
[0036]打包指令解析模块,用于接收为生成目标服务对应的软件开发工具包而发出的打包指令,对所述打包指令进行解析,获得解析结果;
[0037]打包处理模块,用于根据预设不同打包条件和所述解析结果,将所述软件开发工具包打包并展示到预设开发协同界面;
[0038]服务SDK生成模块,用于基于预设监测组件,监测到所述开发协同界面中为获取所述目标服务对应的软件开发工具包而发出的提取指令后,根据预设代码生成器生成所述软件开发工具包所对应的代码程序,并将所述代码程序上传至预设位置,供二次开发者下载使用。
[0039]为了解决上述技术问题,本申请实施例还提供一种计算机设备,采用了如下所述的技术方案:
[0040]一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种标准化服务SDK自动化生成方法,其特征在于,包括下述步骤:根据预设注解处理器,获取AP I源码中的注解信息,其中,所述注解信息指为实现所述AP I源码自动化部署和生成软件开发工具包而预先编写的注解文本;从所述注解信息中筛选出所述AP I源码中的方法注解描述,并根据预设转码规则,将所述方法注解描述生成唯一标记的数据;将所述唯一标记的数据和所述唯一标记的数据对应的描述对象存储到预设数据库;接收为生成目标服务对应的软件开发工具包而发出的打包指令,对所述打包指令进行解析,获得解析结果;根据预设不同打包条件和所述解析结果,将所述软件开发工具包打包并展示到预设开发协同界面;基于预设监测组件,监测到所述开发协同界面中为获取所述目标服务对应的软件开发工具包而发出的提取指令后,根据预设代码生成器生成所述软件开发工具包所对应的代码程序,并将所述代码程序上传至预设位置,供二次开发者下载使用。2.根据权利要求1所述的标准化服务SDK自动化生成方法,其特征在于,所述从所述注解信息中筛选出所述AP I源码中的方法注解描述,并根据预设转码规则,将所述方法注解描述生成唯一标记的数据的步骤,具体包括:获取筛选出的所述AP I源码中所有的方法注解描述;将所述所有的方法注解描述作为一个整体对象,进行序列化处理,获取序列化处理结果;将所述序列化处理结果作为输入流进行MD5值处理,获取MD5值,将所述MD5值作为所述唯一标记的数据,为所述MD5值设置唯一标识作为所述描述对象。3.根据权利要求2所述的标准化服务SDK自动化生成方法,其特征在于,所述将所述唯一标记的数据和所述唯一标记的数据对应的描述对象存储到预设数据库的步骤,具体包括:将所述MD5值作为哈希值,将所述描述对象作为与所述哈希值相匹配的哈希对象,成对缓存入所述预设数据库,其中,所述描述对象可以按照开发时的包名、类名、方法名、返回值进行逐级拼接命名。4.根据权利要求3所述的标准化服务SDK自动化生成方法,其特征在于,在所述将所述MD5值作为哈希值,将所述描述对象作为与所述哈希值相匹配的哈希对象,成对缓存入所述预设数据库的步骤之后,所述方法还包括:在所述预设数据库中生成一个和所述MD5值相对应的自增式版本号信息;为所述MD5值、所述描述对象和所述版本号信息建立关联关系,并为所述MD5值、所述描述对象和所述版本号信息分别设置对应的入库时间戳。5.根据权利要求4所述的标准化服务SDK自动化生成方法,其特征在于,所述为生成目标服务对应的软件开发工具包而发出的打包指令中包括所述软件开发工具包的打包路径,所述接收为生成目标服务对应的软件开发工具包而发出的打包指令,对所...
【专利技术属性】
技术研发人员:彭志明,
申请(专利权)人:中国平安财产保险股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。