本公开涉及人工智能,尤其涉及软件开发、软件安全等领域,可用于智慧城市等场景中。本公开具体涉及一种软件开发方法、装置、电子设备和存储介质。
背景技术:
1、软件开发工具包(software development kit,sdk)一般都是为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。软件开发工具广义上指辅助开发某一类软件的相关文档、范例和工具的集合。
2、sdk可以通过编译器、调试器、软件框架等来促进应用程序的创建。它可以简单的为某个程序设计语言提供应用程序接口api(application programming interface)的一些文件,但也可能包括能与某种嵌入式系统通讯的复杂的硬件。一般的工具包括用于调试和其他用途的实用工具。sdk还经常包括示例代码、支持性的技术注解或者其他的为基本参考资料澄清疑点的支持文档。
技术实现思路
1、本公开提供了一种软件开发方法、装置、电子设备和存储介质。
2、根据本公开的一方面,提供了一种软件开发方法,包括:
3、响应于软件开发工具包sdk开发请求,确定sdk标识信息集合中是否包括所述sdk开发请求中的sdk标识信息,其中,所述sdk标识信息集合中的sdk标识信息为已开发完成的sdk的标识信息;
4、在所述sdk标识信息集合中未包括所述sdk开发请求中的sdk标识信息的情况下,基于所述sdk开发请求中的sdk标识信息,以及至少一个sdk冲突类型中各个所述sdk冲突类型,生成各个所述sdk冲突类型对应的开发规范;
5、基于各个所述sdk冲突类型对应的开发规范,开发目标sdk。
6、根据本公开的另一方面,提供了一种软件开发装置,包括:
7、请求响应模块,用于响应于软件开发工具包sdk开发请求,确定sdk标识信息集合中是否包括所述sdk开发请求中的sdk标识信息,其中,所述sdk标识信息集合中的sdk标识信息为已开发完成的sdk的标识信息;
8、开发规范生成模块,用于在所述sdk标识信息集合中未包括所述sdk开发请求中的sdk标识信息的情况下,基于所述sdk开发请求中的sdk标识信息,以及至少一个sdk冲突类型中各个所述sdk冲突类型,生成各个所述sdk冲突类型对应的开发规范;
9、sdk开发模块,用于基于各个所述sdk冲突类型对应的开发规范,开发目标sdk。
10、根据本公开的另一方面,提供了一种电子设备,包括:
11、至少一个处理器;以及
12、与该至少一个处理器通信连接的存储器;其中,
13、该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行本公开实施例中任一软件开发方法。
14、根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,该计算机指令用于使该计算机执行根据本公开实施例中任一软件开发方法。
15、根据本公开的技术,响应于软件开发工具包sdk开发请求,判断包括有已开发完成的sdk的标识信息的集合中是否包括所述sdk开发请求中的sdk标识信息,如果未包含,则基于sdk开发请求中的sdk标识信息,以及至少一个sdk冲突类型中各个sdk冲突类型,生成各个sdk冲突类型对应的开发规范,并且基于各个所述sdk冲突类型对应的开发规范,开发目标sdk。由于sdk开发请求中的sdk标识信息与已开发完成的sdk的标识信息不相同,则依据sdk开发请求中的sdk标识信息所生成的开发规范也与已开发完成的sdk的开发规范不相同,进而,基于开发规范所生成的目标sdk与已开发完成的sdk不会产生冲突。而且,这不需要将目标sdk与已开发完成的sdk进行一一比对,减少检测冲突的时间,提高sdk的生成效率。
16、应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
1.一种软件开发方法,包括:
2.根据权利要求1所述的方法,还包括:
3.根据权利要求2所述的方法,还包括:
4.根据权利要求2或3所述的方法,还包括:
5.根据权利要求1-4中任一项所述的方法,其中,所述基于所述sdk开发请求中的sdk标识信息,以及至少一个sdk冲突类型中各个所述sdk冲突类型的冲突信息,生成各个所述sdk冲突类型对应的开发规范,包括以下之一:
6.根据权利要求1-5中任一项所述的方法,还包括:
7.一种软件开发装置,包括:
8.根据权利要求7所述的装置,还包括:
9.根据权利要求8所述的装置,还包括:
10.根据权利要求8或9所述的装置,还包括:
11.根据权利要求7-10中任一项所述的装置,其中,所述开发规范生成模块,包括:
12.根据权利要求7-11中任一项所述的装置,还包括:
13.一种电子设备,包括:
14.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-6中任一项所述的方法。
15.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-6中任一项所述的方法。