本公开涉及人工智能领域,具体涉及云计算、低代码、企业应用技术,可应用在软件开发场景下。
背景技术:
1、应用面向多种语言的用户时,同一款应用需要开发多种不同语言,以供不同语言的用户使用,从而实现应用的国际化。
2、相关技术中,应用程序进行国际化开发时,需要对应用程序默认语言类型的源码进行侵入式的修改,也即是,需要对应用程序的源码进行修改,从而使得开发应用程序的工作量很大,且不利于应用的快速迭代,提高了开发成本,降低了应用的迭代效率。
技术实现思路
1、本公开提供了一种用于计算机程序的语言转换方法、装置、设备以及存储介质。
2、根据本公开的一方面,提供了一种计算机程序的语言转换方法,包括:获取计算机程序的源码,并从所述源码之中提取第一语言的语料包;根据所述第一语言的语料包生成所述第一语言的表文件;将所述第一语言的表文件翻译为第二语言的表文件;将所述第二语言的表文件回填至所述语料包,以转换所述源码在页面显示的语言类型。
3、根据本公开的另一方面,提供了一种计算机程序的语言转换装置,包括:提取模块,用于获取计算机程序的源码,并从所述源码之中提取第一语言的语料包;生成模块,用于根据所述第一语言的语料包生成所述第一语言的表文件;翻译模块,用于将所述第一语言的表文件翻译为第二语言的表文件;转换模块,用于将所述第二语言的表文件回填至所述语料包,以转换所述源码在页面显示的语言类型。
4、根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少个处理器执行,以使所述至少一个处理器能够执行本公开的计算机程序的语言转换方法。
5、根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本公开的计算机程序的语言转换方法。
6、根据本公开的另一方面,提供了一种计算机程序产品,所述计算机程序被处理器执行时实现本公开的计算机程序的语言转换方法。
7、本公开相比于现有技术具备以下有益效果:
8、通过语言包将源码在页面显示的语言类型从第一语言转换为第二语言,以使得通过非侵入式实现计算机程序的国际化,也即是,并不需要对计算机程序的源码进行修改,保证计算机程序的源码是干净的,从而降低了开发成本,提高了应用的迭代效率。
9、应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
1.一种计算机程序的语言转换方法,包括:
2.如权利要求1所述的方法,其中,所述从所述源码之中提取第一语言的语言包,包括:
3.如权利要求2所述的方法,其中,所述从所述源码之中提取第一语言的语料包,包括:
4.如权利要求2所述的方法,其中,所述从所述源码之中提取第一语言的语料,以更新所述第一语言的语料包,包括:
5.如权利要求3-4任一所述的方法,其中,所述预设函数集包括第一预设函数和第二预设函数;其中,所述从所述抽象语法树中预设函数集中提取所述第一语言的语料,包括:
6.如权利要求1所述的方法,其中,所述将所述第二语言的表文件回填至所述语料包,以转换所述源码在页面显示的语言类型,包括:
7.如权利要求1-6任一所述的方法,其中,所述第一语言是所述源码在页面显示的默认语言类型,所述第二语言是所述源码需要在页面显示的目标语言类型。
8.一种计算机程序的语言转换装置,包括:
9.如权利要求8所述的装置,其中,所述提取模块,还用于:
10.如权利要求9所述的装置,其中,所述提取模块,还用于:
11.如权利要求9所述的装置,其中,所述提取模块,还用于:
12.如权利要求10-11任一所述的装置,其中,所述提取模块,还用于:
13.如权利要求8所述的装置,其中,所述转换模块,还用于:
14.如权利要求8-13所述的装置,其中,所述第一语言是所述源码在页面显示的默认语言类型,所述第二语言是所述源码需要在页面显示的目标语言类型。
15.一种电子设备,包括:
16.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行权利要求1-7中任一项所述的方法。
17.一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现权利要求1-7中任一项所述的方法。