一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

应用程序的生成方法、装置、设备及存储介质与流程

2021-11-10 03:48:00 来源:中国专利 TAG:


1.本发明涉及应用程序技术领域,特别涉及一种应用程序的生成方法、装置、设备及存储介质。


背景技术:

2.目前,应用程序开发通常需要编写各种功能的模块,然后将编写的各种功能模块组合生成应用程序。然而,在每次开发新的应用程序时,开发方均需要主动编写所有应用程序需要的功能模块,导致重复开发功能模块的情况发生,降低了开发效率。


技术实现要素:

3.本发明的主要目的为提供一种应用程序的生成方法、装置、设备及存储介质,旨在解决现有技术中重复开发功能模块会降低开发效率的技术问题。
4.本发明提出一种应用程序的生成方法,包括:
5.获取开发方上传的开发需求文档,其中,所述开发需求文档中包括所述开发方需要的各功能模块的要求信息,以及各所述功能模块的版本要求信息;
6.对所述开发需求文档进行关键词提取,得到多个需求关键词;
7.在预设的标准词库中查找与各所述需求关键词对应的目标标准词,其中,所述标准词库中预存储有成映射关系的关键词和标准词,一所述标准词映射有一个或多个不同的关键词;
8.在名称列表中查找与各所述目标标准词相同的模块名称,得到目标模块名称及其对应的目标存储地址,其中,所述名称列表中记录有通用模块的模块名称,以及与所述模块名称对应的通用模块在包管理器中的存储地址,所述模块名称以标准词命名;
9.基于所述目标存储地址向所述包管理器发送下载所述目标通用模块的请求,以下载得到所述目标通用模块;
10.获取所述目标通用模块的版本号,以及所述功能模块的版本要求信息中所述目标通用模块需要的版本号;
11.判断所述目标通用模块的版本号与所述目标通用模块需要的版本号是否相同;
12.若所述目标通用模块的版本号与所述目标通用模块需要的版本号不相同,则向所述包管理器发送相应的升级请求,以获取所述包管理器发送的升级包;利用所述升级包将所述目标通用模块的版本升级到所述目标通用模块需要的版本号对应的版本;
13.将升级后的所述目标通用模块与专有功能模块结合生成应用程序;其中,所述专有功能模块为对应所述开发需求文档中除所述目标通用模块之外的其他功能模块。
14.进一步地,所述将升级后的所述目标通用模块与专有功能模块结合生成应用程序的步骤之前,包括:
15.基于所述开发需求文档和所述目标通用模块名称,确定无法在所述包管理器中获取的专有功能模块;
16.生成所述专有功能模块的名称清单,以供开发人员按照所述名称清单开发对应的所述专有功能模块。
17.进一步地,所述在预设的标准词库中查找与各所述需求关键词对应的目标标准词的步骤,包括:
18.创建目标标准词列表;
19.依次获取各所述需求关键词中的一个关键词,并将其作为第一关键词;
20.在所述预设的标准词库中匹配与所述第一关键词具有映射关系的第一目标标准词;
21.判断第一目标标准词是否存在于所述目标标准词列表中;
22.若所述第一目标标准词不存在于所述目标标准词列表中,则将所述第一目标标准词添加到所述目标标准词列表中;
23.将所述目标标准词列表中的标准词作为各所述需求关键词对应的目标标准词。
24.进一步地,所述基于所述目标存储地址向所述包管理器发送下载所述目标通用模块的请求,以下载得到所述目标通用模块的步骤之后,还包括:
25.判断所述开发方是否下载所述目标通用模块以外的需求通用模块;
26.若是,则生成获取第二关键词的指令,以便开发方输入与所述需求通用模块的模块名称具有关联关系的第二关键词;
27.获取所述需求通用模块的模块名称对应的第二标准词;
28.接收开发方输入的第二关键词,并将所述第二关键词与所述第二标准词关联;
29.将所述第二关键词、第二关键词与第二标准词的关联关系存入所述标准词库中。
30.进一步地,所述获取所述目标通用模块的版本号,以及所述功能模块的版本要求信息中所述目标通用模块需要的版本号的步骤之后,还包括:
31.记录所述功能模块的版本要求信息中所述目标通用模块需要的版本号;
32.判断所述目标通用模块需要的版本号被记录的次数是否超过第一设定次数;
33.若是,则基于所述目标通用模块需要的版本号向所述包管理器发送升级指令,以便所述包管理器将所述目标通用模块的版本升级到所述目标通用模块需要的版本号对应的版本。
34.进一步地,所述将升级后的所述目标通用模块与专有功能模块结合生成应用程序的步骤之后,还包括:
35.判断开发方是否删除所述目标通用模块;
36.若开发方删除所述目标通用模块,则记录所述目标通用模块的模块名称对应的第三关键词;
37.判断所述第三关键词被记录的次数是否超过第二设定次数;
38.若所述第三关键词被记录的次数超过第三设定次数,则在所述标准词库中删除所述第三关键词。
39.进一步地,所述将升级后的所述目标通用模块与专有功能模块结合生成应用程序的步骤之后,还包括:
40.获取所述应用程序的初始文件;
41.根据初始文件中各代码的类型得到代码变换规则;
42.根据所述代码变换规则将所述初始文件中的各代码进行节点编辑和/或属性编辑,得到变换文件;
43.根据待发布平台的需求得到平台变换规则,并对所述变换文件进行平台变换,得到中间文件;
44.对所述中间文件进行编译,得到更新文件;
45.打包所述更新文件,完成所述应用程序的更新。
46.本技术还提供了一种应用程序的生成装置,包括:
47.第一获取单元,用于获取开发方上传的开发需求文档,其中,所述开发需求文档中包括所述开发方需要的各功能模块的要求信息,以及各所述功能模块的版本要求信息;
48.提取单元,用于对所述开发需求文档进行关键词提取,得到多个需求关键词;
49.第一查找单元,用于在预设的标准词库中查找与各所述需求关键词对应的目标标准词,其中,所述标准词库中预存储有成映射关系的关键词和标准词,一所述标准词映射有一个或多个不同的关键词;
50.第二查找单元,用于在名称列表中查找与各所述目标标准词相同的模块名称,得到目标模块名称及其对应的目标存储地址,其中,所述名称列表中记录有通用模块的模块名称,以及与所述模块名称对应的通用模块在包管理器中的存储地址,所述模块名称以标准词命名;
51.下载单元,用于基于所述目标存储地址向所述包管理器发送下载所述目标通用模块的请求,以下载得到所述目标通用模块;
52.第二获取单元,用于获取所述目标通用模块的版本号,以及所述功能模块的版本要求信息中所述目标通用模块需要的版本号;
53.判断单元,用于判断所述目标通用模块的版本号与所述目标通用模块需要的版本号是否相同;
54.升级单元,用于当所述目标通用模块的版本号与所述目标通用模块需要的版本号不相同时,向所述包管理器发送相应的升级请求,以获取所述包管理器发送的升级包;利用所述升级包将所述目标通用模块的版本升级到所述目标通用模块需要的版本号对应的版本;
55.安装单元,用于将升级后的所述目标通用模块与专有功能模块结合生成应用程序;其中,所述专有功能模块为对应所述开发需求文档中除所述目标通用模块之外的其他功能模块。
56.本发明还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
57.本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
58.本发明的有益效果为:提取开发方上传的开发需求文档中的关键词,匹配与关键词对应的标准词,根据标准词下载开发方需要的目标通用模块,且当下载的目标通用模块的版本号与功能模块的版本要求信息中目标通用模块需要的版本号不相同时,对下载的目标通用模块进行升级,最后将升级后的目标通用模块与开发方开发的专有功能模块结合生成应用程序。开发方在开发应用程序的过程中,无需重复开发通用模块,只需上传开发需求
文档即可得到通用模块,无需关心通用模块实现细节,只需要更专注实现自己的业务逻辑即可,提升应用程序开发效率。
附图说明
59.图1为本发明一实施例的应用程序的生成方法流程示意图。
60.图2为本发明一实施例的应用程序的生成装置结构示意图。
61.图3为本发明一实施例的计算机设备内部结构示意图。
62.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
63.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
64.如图1所示,本发明提出一种应用程序的生成方法,包括:
65.s1、获取开发方上传的开发需求文档,其中,所述开发需求文档中包括所述开发方需要的各功能模块的要求信息,以及各所述功能模块的版本要求信息;
66.s2、对所述开发需求文档进行关键词提取,得到多个需求关键词;
67.s3、在预设的标准词库中查找与各所述需求关键词对应的目标标准词,其中,所述标准词库中预存储有成映射关系的关键词和标准词,一所述标准词映射有一个或多个不同的关键词;
68.s4、在名称列表中查找与各所述目标标准词相同的模块名称,得到目标模块名称及其对应的目标存储地址,其中,所述名称列表中记录有通用模块的模块名称,以及与所述模块名称对应的通用模块在包管理器中的存储地址,所述模块名称以标准词命名;
69.s5、基于所述目标存储地址向所述包管理器发送下载所述目标通用模块的请求,以下载得到所述目标通用模块;
70.s6、获取所述目标通用模块的版本号,以及所述功能模块的版本要求信息中所述目标通用模块需要的版本号;
71.s7、判断所述目标通用模块的版本号与所述目标通用模块需要的版本号是否相同;
72.s8、若所述目标通用模块的版本号与所述目标通用模块需要的版本号不相同,则向所述包管理器发送相应的升级请求,以获取所述包管理器发送的升级包,利用所述升级包将所述目标通用模块的版本升级到所述目标通用模块需要的版本号对应的版本;
73.s9、将升级后的所述目标通用模块与专有功能模块结合生成应用程序;其中,所述专有功能模块为对应所述开发需求文档中除所述目标通用模块之外的其他功能模块。
74.如上述步骤s1所述,各功能模块的要求信息包括名称、功能模块所要实现的功能和功能模块的要求信息,其中,每个开发方对各功能模块的命名会有所不同,如用于用户登陆的模块,开发方1命名为登陆模块,开发方2命名为账户模块。各功能模块的版本要求信息中包括功能模块需要的版本号,每个功能模块所需要的版本号可以相同,也可以不同,各功能模块的版本要求信息中记录了功能模块及其对应需要的版本号。
75.如上述步骤s2

s3所述,采用自然语言处理技术对开发需求文档进行分词,并对分词结果进行去除停用词处理,得到开发需求文档中的多个关键词,作为需求关键词。预设标
准词库为预先创建的标准词库,其中存储有成映射关系的关键词和标准词,一个标准词对应一个或多个不同的关键词,因而,可以根据开发需求文档中的需求关键词匹配到对应的目标标准词,例如识别到开发方的需求文档中存在“账户”、“注册”等需求关键词,该需求关键词在预设标准词库中对应目标标准词“登陆”,进而通过“登陆”得到用户需要的目标通用模块为登陆模块。
76.如上述步骤s4所述,标准词与通用模块的模块名称相同,名称列表中存储有多个通用模块的名称以及对应通用模块在包管理器中的存储地址,因而能够根据标准词得到开发方需要的目标通用模块和目标通用模块的地址。
77.如上述步骤s5所述,根据得到的目标通用模块的存储地址向所述包管理器发送下载所述目标通用模块的请求,以便下载目标通用模块。包管理器中存储有多个通用模块,例如登陆模块、埋点模块、订阅模块、webview模块等。在创建好通用模块后,将这些通用模块(包括登陆模块、埋点模块、订阅模块、webview模块等)存入npm(node package manager,node包管理器)中,同时将通用脚手架也存储包管理器中,方便包管理器对通用脚手架和这些通用模块的统一管理。在开发方的项目需要安装通用模块时,通过包管理器中的通用脚手架即可轻松的安装包管理器中的通用模块。
78.登陆模块、埋点模块、订阅模块、webview模块为开发方在接入后具体使用的模块,具有预先编辑好的代码。使用代码根据各模块的运行逻辑进行编辑,形成具有运行逻辑的代码,将代码封装好之后完成登陆模块的创建,在登陆模块安装到开发方的项目中时,将代码拷贝到开发方的项目中即可。
79.其中,登陆模块的代码运行逻辑为:1、通过应用程序的wx.login的api(application programming interface,应用程序编程接口)接口,获取登陆用户的openid;2、将所述登陆用户的openid与已存用户的openid进行逐一匹配;其中,所述匹配为判断所述登陆用户的openid与已存用户的openid是否相同;其中,所述已存用户的openid与userid关联并存储在第一数据库中;3、若匹配到已存用户的openid,则所述登陆用户为匹配到的已存用户,并返回匹配到的已存用户的userid对应的用户信息,完成登陆。4、若未匹配到已存用户的openid,则获取所述登陆用户的登陆信息;5、根据所述登陆信息得到所述登陆用户账号中的userid;6、将所述登陆用户的openid与所述登陆用户账号中的userid关联;7、将登陆用户的openid与所述登陆用户账号中的userid的关联关系存储在第一数据库中,将所述登陆用户变更为已存用户。
80.埋点模块的代码运行逻辑为:1、获取预设的埋点逻辑代码,并将所述埋点逻辑代码封装形成所述埋点模块,其中,所述埋点模块在运行时,包括以下步骤:2、获取埋点要素的具体信息;其中,所述埋点要素包括categroy、eventid、click;3、通过应用程序的接口请求api,将所述埋点要素的具体信息上传至大数据团队的系统接口中,以便所述大数据团队监控各模块的点击和使用情况。
81.订阅模块的代码运行逻辑为:1、获取预设的订阅逻辑代码,并将所述订阅逻辑代码封装形成所述订阅模块,其中,所述订阅模块在运行时,包括以下步骤:2、配置应用程序订阅消息模板,得到所述应用程序订阅消息模板的id;3、将所述应用程序订阅消息模板的id与触达系统关联;通过应用程序的订阅api接口参数和触达系统api接口参数一致的特点,当应用程序的订阅api接口参数和触达系统api接口参数一致时封装订阅模块,在封装
订阅模块时,传入应用程序订阅消息模板id,并将传入的应用程序订阅消息模板id和触达系统进行关联。4、将所述应用程序订阅消息模板的id存储在第二数据库中。
82.webview模块的代码运行逻辑为:1、获取预设的分享逻辑代码,并将所述分享逻辑代码封装形成所述webview模块,其中,所述webview模块在运行时,包括以下步骤:2、获取h5页面的具体分享信息;其中,所述分享信息包括分享标题、分享描述、分享链接;3、将所述分享信息存入webview组件;在开发方的项目安装webview模块后,只需要输入分享消息的具体内容,包括分享标题的具体内容、分享描述的具体内容、分享链接的具体内容,当应用程序需要分享时,通过webview模块的api得到对应的分享信息,进行分享。
83.如上述步骤s6

s8所述,当通用模块的版本号与功能模块的版本要求信息中目标通用模块需要的版本号不相同时,通用模块可能无法成功应用于开发方的项目中,因而需要向所述包管理器发送相应的升级请求,获取到包管理器发送的目标通用模块对应的升级包,利用升级包将目标通用模块的版本升级到目标通用模块需要的版本号对应的版本,使得通用模块能够应用于开发方的项目中。
84.如上述步骤s9所述,将升级后的目标通用模块与专有功能模块结合生成应用程序,专有功能模块为开发方的项目中特有的功能模块,与其他应用程序的功能模块无法通用,即需要开发方自行进行开发的功能模块。如此,开发方在开发应用程序的过程中,无需重复开发通用模块,只需上传开发需求文档即可得到通用模块,无需关心通用模块实现细节,只需要更专注实现自己的业务逻辑即可,提升应用程序开发效率。
85.在一个实施例中,所述将升级后的所述目标通用模块与专有功能模块结合生成应用程序的步骤之前,包括:
86.s091、基于所述开发需求文档和所述目标通用模块名称,确定无法在所述包管理器中获取的专有功能模块;
87.s092、生成所述专有功能模块的名称清单,以供开发人员按照所述名称清单开发对应的所述专有功能模块。
88.如上述步骤s091

s092所述,开发需求文档中包含了应用程序需要的所有功能模块的信息(包括通用功能模块和专有功能模块),当根据开发需求文档得到目标通用模块的名称之后,剩余模块则为专有功能模块,专有功能模块为需要开发方自行开发的模块,无法从包管理器中获取,因此,根据开发需求文档和目标通用模块名称生成专有功能模块的名称清单,方便开发人员确定哪些模块需要自行开发,提升开发速度。
89.在一个实施例中,所述在预设的标准词库中查找与各所述需求关键词对应的目标标准词的步骤,包括:
90.s31、创建目标标准词列表;
91.s32、依次获取各所述需求关键词中的一个关键词,并将其作为第一关键词;
92.s33、在所述预设的标准词库中匹配与所述第一关键词具有映射关系的第一目标标准词;
93.s34、判断第一目标标准词是否存在于所述目标标准词列表中;
94.s35、若所述第一目标标准词不存在于所述目标标准词列表中,则将所述第一目标标准词添加到所述目标标准词列表中;
95.s36、将所述目标标准词列表中的标准词作为各所述需求关键词对应的目标标准
词。
96.如上述步骤s31

s36所述,由于预设的标准词库中,一个标准词可能对应有多个关键词,因而根据开发需求文档得到的需求关键词中,多个需求关键词可能对应了一个目标标准词,此时无需多次获取同一个目标标准词。因此,首先创建一个目标标准词列表,在根据一个需求关键词得到一个目标标准词后,判断得到的目标标准词是否出现在目标标准词列表中,如果出现,表示该目标标准词是重复的标准词,即该需求关键词与之前的某一需求关键词同时对应了此时得到目标标准词,因而直接返回步骤s32,继续获取下一个需求关键词;当得到的目标标准词没有出现在目标标准词列表中时,将得到的目标标准词添加到目标标准词列表中,最终遍历完所有的需求关键词后得到的目标标准词列表中的目标标准词即为最终各需求关键词对应的目标标准词,根据这些目标标准词即可获知开发方需要哪些通用模块。
97.在一个实施例中,所述基于所述目标存储地址向所述包管理器发送下载所述目标通用模块的请求,以下载得到所述目标通用模块的步骤之后,还包括:
98.s501、判断所述开发方是否下载所述目标通用模块以外的需求通用模块;
99.s502、若是,则生成获取第二关键词的指令,以便开发方输入与所述需求通用模块的模块名称具有关联关系的第二关键词;
100.s503、获取所述需求通用模块的模块名称对应的第二标准词;
101.s504、接收开发方输入的第二关键词,并将所述第二关键词与所述第二标准词关联;
102.s505、将所述第二关键词、第二关键词与第二标准词的关联关系存入所述标准词库中。
103.如上述步骤s501

s505所述,需求通用模块为通过开发需求文档未识别到的通用模块,当开发方下载了需求通用模块时,表示根据开发需求文档识别到的通用模块不够全面,因此,生成获取第二关键词的指令,促使开发方输入与需求通用模块相关的第二关键词,第二关键词可以使开发需求文档中的词,也可以是开发方自认为与需求通用模块相关的其他第二关键词;当得到开发方输入的第二关键词后,将第二关键词与需求通用模块对应的标准词关联,并将第二关键词、第二关键词与第二标准词的关联关系存入标准词库中,以对标准词库进行更新,便于后续准确识别开发方所需求的通用模块。
104.在一个实施例中,所述获取所述目标通用模块的版本号,以及所述功能模块的版本要求信息中所述目标通用模块需要的版本号的步骤之后,还包括:
105.s601、记录所述功能模块的版本要求信息中所述目标通用模块需要的版本号;
106.s602、判断所述目标通用模块需要的版本号被记录的次数是否超过第一设定次数;
107.s603、若是,则基于所述目标通用模块需要的版本号向所述包管理器发送升级指令,以便所述包管理器将所述目标通用模块的版本升级到所述目标通用模块需要的版本号对应的版本。
108.如上述步骤s601

s603所述,当多个开发方均通过本服务器获取通用模块时,每次得到功能模块的版本要求信息中目标通用模块的版本号之后,记录目标通用模块需要的版本号,如登陆模块3.1,其中3.1表示登陆模块需要的版本号,进而判断登陆模块的版本号
3.1被记录的次数,当超过第一设定次数(根据具体需要进行设置,在此不做限定)时,表示大多数的开发方均需要版本号为3.1的登陆模块,因此,向包管理器发送升级指令,使得包管理器中登陆模块的版本升级到3.1,在后续开发方需要登陆模块时,无需对登陆模块进行升级即可直接安装,节省时间。
109.在一个实施例中,所述将升级后的所述目标通用模块与专有功能模块结合生成应用程序的步骤之后,还包括:
110.s901、判断开发方是否删除所述目标通用模块;
111.s902、若开发方删除所述目标通用模块,则记录所述目标通用模块的模块名称对应的第三关键词;
112.s903、判断所述第三关键词被记录的次数是否超过第二设定次数;
113.s904、若所述第三关键词被记录的次数超过第三设定次数,则在所述标准词库中删除所述第三关键词。
114.如上述步骤s901

s904所述,当开发方删除了已经安装完成的通用模块时,表示根据开发需求文档识别到的通用模块出现了错误,即关键词与标准词的映射关系不够准确;因此,记录被删除的通用模块的名称对应的第三关键词,由于根据一个开发方得到的数据会出现不够准确的情况,所以当第三关键词被记录的次数超过第二设定次数(根据具体需要进行设置,在此不做限定)时,表示多个开发方均认为该关键词与通用模块对应的标准之间的映射关系不准确,此时,在预设的标准词库中删除第三关键词,以便后续开发方不会通过该关键词得到被删除的通用模块,提高对开发需求文档识别的准确性。
115.在一个实施例中,所述将升级后的所述目标通用模块与专有功能模块结合生成应用程序的步骤之后,还包括:
116.s911、获取所述应用程序的初始文件;
117.s912、根据初始文件中各代码的类型得到代码变换规则;
118.s913、根据所述代码变换规则将所述初始文件中的各代码进行节点编辑和/或属性编辑,得到变换文件;
119.s914、根据待发布平台的需求得到平台变换规则,并对所述变换文件进行平台变换,得到中间文件;
120.s915、对所述中间文件进行编译,得到更新文件;
121.s916、打包所述更新文件,完成所述应用程序的更新。
122.如上述步骤s911

s916所述,初始文件为应用程序在开发平台中所编写的代码文件。代码文件为如下代码文件中的至少一种:存储有层叠样式内容的代码文件、存储有脚本逻辑内容的代码文件、存储有页面配置内容的代码文件和存储有超级文本标记内容的代码文件。代码类型可以包括样式类型、脚本逻辑类型、页面配置类型以及文本标记类型中的至少一种。针对不同代码类型设置相应的标准转换规则,并在需要生成变换文件之前,根据代码类型进行标准转换规则的选取。转换操作包括节点编辑操作和/或属性编辑操作,节点编辑为根据所述原始文件中的代码段,生成至少一个节点树;根据预设语法规则,对所述节点树中的至少一个节点进行编辑,以更新所述节点树;根据更新后的节点树,生成变换文件。其中,树中的一个节点表征代码中的一个结构,并以树状的形式呈现汇编语言的语法结构。相应的,通过对节点树中的节点进行添加、删除和修改操作中的至少一种,即可实现对节点
树的更新;其中,节点树可以是ast(abstract syntax tree,抽象语法树)。属性编辑为对所述初始文件中代码的至少一个目标对象的对象属性进行编辑;根据编辑后的目标对象,生成变换文件。针对页面配置类型的代码段,根据原始文件中的页面配置代码段与开发平台中的对象的属性差异,确定目标对象;根据对象转换规则,将目标对象的待修改属性修改为目标属性,得到页面配置类型的变换文件。得到变换文件后,由于不同发布平台的平台开发者不同,导致不同发布平台对待发布的应用程序的代码格式要求也不相同。为了使得应用程序代码能够满足待发布平台的平台需求,还需要将变换文件根据待发布平台的平台需求转化为中间文件。然后对中间文件进行编译,生成更新文件,从而将汇编语言转化为计算机可识别的二进制语言;最后打包更新文件生成应用程序,从而将应用程序在待发布平台进行发布,以供用户使用。
123.如图2所示,本技术还提供了一种应用程序的生成装置,包括:
124.第一获取单元,用于获取开发方上传的开发需求文档,其中,所述开发需求文档中包括所述开发方需要的各功能模块的要求信息,以及各所述功能模块的版本要求信息;
125.提取单元,用于对所述开发需求文档进行关键词提取,得到多个需求关键词;
126.第一查找单元,用于在预设的标准词库中查找与各所述需求关键词对应的目标标准词,其中,所述标准词库中预存储有成映射关系的关键词和标准词,一所述标准词映射有一个或多个不同的关键词;
127.第二查找单元,用于在名称列表中查找与各所述目标标准词相同的模块名称,得到目标模块名称及其对应的目标存储地址,其中,所述名称列表中记录有通用模块的模块名称,以及与所述模块名称对应的通用模块在包管理器中的存储地址,所述模块名称以标准词命名;
128.下载单元,用于基于所述目标存储地址向所述包管理器发送下载所述目标通用模块的请求,以下载得到所述目标通用模块;
129.第二获取单元,用于获取所述目标通用模块的版本号,以及所述功能模块的版本要求信息中所述目标通用模块需要的版本号;
130.判断单元,用于判断所述目标通用模块的版本号与所述目标通用模块需要的版本号是否相同;
131.升级单元,用于当所述目标通用模块的版本号与所述目标通用模块需要的版本号不相同时,向所述包管理器发送相应的升级请求,以获取所述包管理器发送的升级包;利用所述升级包将所述目标通用模块的版本升级到所述目标通用模块需要的版本号对应的版本;
132.安装单元,用于将升级后的所述目标通用模块与专有功能模块结合生成应用程序;其中,所述专有功能模块为对应所述开发需求文档中除所述目标通用模块之外的其他功能模块。
133.在一个实施例中,还包括:
134.专有功能模块确定单元,用于基于所述开发需求文档和所述目标通用模块名称,确定无法在所述包管理器中获取的专有功能模块;
135.名称清单生成单元,用于生成所述专有功能模块的名称清单,以供开发人员按照所述名称清单开发对应的所述专有功能模块。
136.在一个实施例中,第一查找单元,包括:
137.创建子单元,用于创建目标标准词列表;
138.第一关键词获取子单元,用于依次获取各所述需求关键词中的一个关键词,并将其作为第一关键词;
139.第一标准词匹配子单元,用于在所述预设的标准词库中匹配与所述第一关键词具有映射关系的第一目标标准词;
140.标准词列表判断子单元,用于判断第一目标标准词是否存在于所述目标标准词列表中;
141.添加子单元,用于当所述第一目标标准词不存在于所述目标标准词列表中时,将所述第一目标标准词添加到所述目标标准词列表中;
142.作为子单元,用于将所述目标标准词列表中的标准词作为各所述需求关键词对应的目标标准词。
143.在一个实施例中,还包括:
144.需求通用模块判断单元,用于判断所述开发方是否下载所述目标通用模块以外的需求通用模块;
145.输入单元,用于当开发方下载所述目标通用模块以外的需求通用模块时,生成获取第二关键词的指令,以便开发方输入与所述需求通用模块的模块名称具有关联关系的第二关键词;
146.第二标准词获取单元,用于获取所述需求通用模块的模块名称对应的第二标准词;
147.关联单元,用于接收开发方输入的第二关键词,并将所述第二关键词与所述第二标准词关联;
148.存储单元,用于将所述第二关键词、第二关键词与第二标准词的关联关系存入所述标准词库中。
149.在一个实施例中,还包括:
150.记录单元,用于记录所述功能模块的版本要求信息中所述目标通用模块需要的版本号;
151.第一设定次数判断单元,用于判断所述目标通用模块需要的版本号被记录的次数是否超过第一设定次数;
152.升级单元,用于当目标通用模块需要的版本号被记录的次数超过第一设定次数时,基于所述目标通用模块需要的版本号向所述包管理器发送升级指令,以便所述包管理器将所述目标通用模块的版本升级到所述目标通用模块需要的版本号对应的版本。
153.在一个实施例中,还包括:
154.目标通用模块判断单元,用于判断开发方是否删除所述目标通用模块;
155.第三关键词记录单元,用于当开发方删除所述目标通用模块时,记录所述目标通用模块的模块名称对应的第三关键词;
156.第二设定次数判断单元,用于判断所述第三关键词被记录的次数是否超过第二设定次数;
157.第三关键词删除单元,用于当所述第三关键词被记录的次数超过第三设定次数
时,在所述标准词库中删除所述第三关键词。
158.在一个实施例中,还包括:
159.初始文件获取单元,用于获取所述应用程序的初始文件;
160.代码变换规则单元,用于根据初始文件中各代码的类型得到代码变换规则;
161.变换文件单元,用于根据所述代码变换规则将所述初始文件中的各代码进行节点编辑和/或属性编辑,得到变换文件;
162.中间文件单元,用于根据待发布平台的需求得到平台变换规则,并对所述变换文件进行平台变换,得到中间文件;
163.更新文件单元,用于对所述中间文件进行编译,得到更新文件;
164.打包单元,用于打包所述更新文件,完成所述应用程序的更新。
165.上述各单元、子单元均是用于对应执行上述应用程序的生成方法中的各个步骤,其具体实现方式参照上述方法实施例所述,在此不再进行赘述。
166.如图3所示,本发明还提供了一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储应用程序的生成方法的过程需要的所有数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现应用程序的生成方法。
167.本领域技术人员可以理解,图3中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定。
168.本技术一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任意一个应用程序的生成方法。
169.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储与一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram通过多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双速据率sdram(ssrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
170.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
171.以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献