[发明专利]一种小程序转换方法、系统、设备及介质在审
申请号: | 202110978060.0 | 申请日: | 2021-08-23 |
公开(公告)号: | CN113918159A | 公开(公告)日: | 2022-01-11 |
发明(设计)人: | 冯威武 | 申请(专利权)人: | 太原天祥科技有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 成都鱼爪智云知识产权代理有限公司 51308 | 代理人: | 梁悦敏 |
地址: | 030006 山西省太原市小店*** | 国省代码: | 山西;14 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 程序 转换 方法 系统 设备 介质 | ||
本发明提出了一种小程序转换方法、系统、设备及介质,涉及计算机技术领域。包括采用对待开发小程序源代码进行转换,利用中间代码易于翻译成目标程序的源程序的等效内部表示代码的优势,对待开发小程序源代码进行对应的转换,从而达到对小程序进行转换的目的,继而节约重新开发小程序的成本以及时间。
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种小程序转换方法、系统、设备及介质。
背景技术
小程序是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或者搜一下即可打开应用,也体现了“用完即走”的理念,用户不用关心是否安装太多应用的问题。其中微信小程序产生较早,很多公司都已经开发了微信小程序,来辅助公司产品或业务的运营推广。并且各大互联网巨头纷纷推出小程序平台,企业如果希望能在不同的平台进行运营推广,则需要针对不同的平台进行小程序的重复开发,由此产生较大的开发成本,由此需要一种应用于不同平台的小程序转换方法。
发明内容
本发明的目的在于提供一种小程序转换方法,其能够对待开发小程序源代码进行对应的转换,从而达到对小程序进行转换的目的,继而节约重新开发小程序的成本以及时间。
本发明的实施例是这样实现的:
第一方面,本申请实施例提供一种小程序转换方法,其包括获取待开发小程序的原始文件;利用原始文件的开发平台导出源代码和图像文件,将图像文件保存至预设位置,保存预设位置的地址信息为引用图片地址;利用分词器将源代码中的语句或表达式拆分成独立的语法单元;利用语法分析器,把拆分的语法单元组装成抽象语法树;通过源代码对应的前端编译器,根据抽象语法树把源代码编译成中间代码;利用待转换平台的后端编译器,将中间代码编译为目标代码;将目标代码中的图像文件地址替换为对应的引用图片地址;根据待发布平台的平台需求,将目标代码转换为目标小程序。
在本发明的一些实施例中,利用分词器将源代码中的语句或表达式拆分成独立的语法单元的步骤包括:将原始文件开发平台的库作为分词器的词典;当分词器读取到源代码中的语句或表达式时,将语句或表达式拆分成独立的语法单元;当分词器读取到语句或表达式时,确定语句或表达式的起始字符和结尾字符,将起始字符、结尾字符以及位于起始字符和结尾字符之间的语句一起拆分成独立的语法单元。
在本发明的一些实施例中,分词器采用KERAS分词器。
在本发明的一些实施例中,利用语法分析器,把拆分的语法单元组装成抽象语法树的步骤包括:对语法单元进行扫描,从第一个非空格字符开始扫描,若扫描出的字符为字母、数字或运算符号,继续下一个字符扫描,直至扫描出的字符为空格,将空格前的字母、数字或运算符号保存为单词单元,再对空格后的字符进行扫描;将单词单元根据扫描出的顺序,在抽象语法树上依次分级显示。
在本发明的一些实施例中,将单词单元根据扫描出的顺序,在抽象语法树上依次分级显示的步骤还包括:当多个语法单元中位于首位的单词单元相同时,在抽象语法树上共用一个单词单元。
在本发明的一些实施例中,前端编译器采用GCC编译器。
在本发明的一些实施例中,后端编译器采用LVVM编译器。
第二方面,本申请实施例提供一种小程序转换系统,其包括:
输入模块,用于获取待开发小程序的原始文件;
转换模块,用于利用原始文件的开发平台导出源代码和图像文件,将图像文件保存至预设位置,保存预设位置的地址信息为引用图片地址;
分词模块,用于利用分词器将源代码中的语句或表达式拆分成独立的语法单元;
语法提取模块,用于利用语法分析器,把拆分的语法单元组装成抽象语法树;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于太原天祥科技有限公司,未经太原天祥科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110978060.0/2.html,转载请声明来源钻瓜专利网。