本发明涉及软件开发,尤其涉及一种云产品开发方法及装置。
背景技术:
1、随着计算机技术的发展,云产品开发面临产品多样性、部署环境复杂性、客户定制性带来的巨大挑战。
2、云产品开发团队需要常常针对不同产品、不同部署环境以及不同客户诉求进行云产品的开发。由于不同产品、不同部署环境以及不同客户诉求的云产品之间的也会具有很多相同或相似的功能,因此若针对不同产品、不同部署环境以及不同客户诉求分别独立进行云产品的开发,则会将大量开发资源浪费在相同或相似的功能的开发上,影响云产品的开发效率,而若在云产品开发过程中引用其他云产品的功能,则又会导致云产品之间相互依赖,无法独立运行。
技术实现思路
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、本发明实施例提供的云产品开发方法首先展示承载有支持选配操作的多个功能模块的标识的云产品配置界面,然后响应于所述云产品配置界面上输入的选配操作,生成包括被选中的功能模块的标识的所述目标云产品的选配信息,最后调用渲染引擎解析所述选配信息以拉取所述选配信息中的功能模块对应的模块资源,并根据所述选配信息中的功能模块的嵌套信息渲染所述模块资源以生成所述目标云产品。由于本发明实施例提供的云产品开发方法可以在开发云产品时,根据目标云产品的选配信息拉取选配信息中的功能模块对应的模块资源,并根据所述选配信息中的功能模块的嵌套信息渲染所述模块资源以生成所述目标云产品,因此本发明实施例可以使功能模块的模块资源供需要开发的云产品重复调用,进而避免将大量开发资源浪费在相同或相似的功能模块的开发上。又因为本发明实施例中目标云产品是独立开的,没有依赖其它云产品的功能模块,因此目标云产品不会依赖其它云产品,解耦了云产品之间的依赖。综上所述,本发明实施例可以避免将大量开发资源浪费在相同或相似的功能模块的开发上的同时,解耦云产品之间的依赖。