[发明专利]用户界面文件生成方法及装置有效
申请号: | 202110010030.0 | 申请日: | 2021-01-05 |
公开(公告)号: | CN112612470B | 公开(公告)日: | 2022-04-22 |
发明(设计)人: | 李旭 | 申请(专利权)人: | 北京城市网邻信息技术有限公司 |
主分类号: | G06F8/38 | 分类号: | G06F8/38 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 杨爱平 |
地址: | 100015 北京市朝阳区酒仙桥*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用户界面 文件 生成 方法 装置 | ||
本发明提供一种用户界面文件生成方法及装置,方法包括:基于抽象语法树AST对目标用户界面UI的目标源码文件进行处理,获取第一预设数目个AST节点,根据第一预设数目个AST节点在预设的P个AST节点类型中确定N个AST节点类型;根据预设策略对N个AST节点类型归并,确定M个第一目标AST节点类型,M小于N;基于M个第一目标AST节点类型,生成包括标准节点数据流和标准解析接口的目标语法树;根据标准解析接口在标准节点数据流中进行信息提取,生成目标UI对应的结构描述文件和代理文件。本发明可以基于AST生成UI文件,无需人工转义且降低了开发难度,同时降低了业务复杂度,提高了源码文件的可维护性。
技术领域
本发明涉及计算机数据处理技术领域,尤其涉及一种用户界面文件生成方法及装置。
背景技术
Flutter(跨平台的图形渲染引擎)是谷歌提供的移动用户界面(User Interface,UI)UI框架,可以在IOS和Android(安卓)上构建高质量的原生用户界面。现有技术中,Flutter UI动态化框架(简称Fair)通过解析UI对应的结构描述文件(可以简称为领域特定语言(Domain Specific Language,DSL)文件)来实现UI的动态化布局,其中,UI对应的结构描述文件由人工编写,或人工翻译UI的源码文件生成。
在通过人工编写生成UI对应的结构描述文件时,需要开发者对Fair有深刻的理解,对开发者要求较高;通过人工转义UI的源码文件生成UI对应的结构描述文件时,耗时较长,易错,且不易维护。
由此可见,在生成UI对应的结构描述文件时存在对开发者要求高或者生成效率低、准确率低且不易维护的问题。
发明内容
本发明实施例提供一种用户界面文件生成方法及装置,以解决现有技术中在生成UI对应的结构描述文件时存在的对开发者要求高或者生成效率低、准确率低且不易维护的问题。
第一方面,本发明实施例提供一种用户界面文件生成方法,包括:
基于抽象语法树AST对目标用户界面UI对应的目标源码文件进行处理,获取第一预设数目个AST节点,并根据所述第一预设数目个AST节点在预设的P个AST节点类型中确定N个AST节点类型,所述P个AST节点类型对应于包括至少一个源码文件的源码文件集合,每个所述源码文件对应于一UI,各所述UI基于Flutter引擎进行图形渲染;
根据预设策略对所述N个AST节点类型归并,确定M个第一目标AST节点类型,M、N为正整数,M小于N,且M大于或者等于1;
基于所述M个第一目标AST节点类型,生成包括标准节点数据流和标准解析接口的目标语法树;
根据所述标准解析接口在所述标准节点数据流中进行信息提取,生成所述目标UI对应的结构描述文件和代理文件。
第二方面,本发明实施例提供一种用户界面文件生成装置,包括:
第一处理模块,用于基于抽象语法树AST对目标用户界面UI对应的目标源码文件进行处理,获取第一预设数目个AST节点,并根据所述第一预设数目个AST节点在预设的P个AST节点类型中确定N个AST节点类型,所述P个AST节点类型对应于包括至少一个源码文件的源码文件集合,每个所述源码文件对应于一UI,各所述UI基于Flutter引擎进行图形渲染;
确定模块,用于根据预设策略对所述N个AST节点类型归并,确定M个第一目标AST节点类型,M、N为正整数,M小于N,且M大于或者等于1;
第一生成模块,用于基于所述M个第一目标AST节点类型,生成包括标准节点数据流和标准解析接口的目标语法树;
第二生成模块,用于根据所述标准解析接口在所述标准节点数据流中进行信息提取,生成所述目标UI对应的结构描述文件和代理文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京城市网邻信息技术有限公司,未经北京城市网邻信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110010030.0/2.html,转载请声明来源钻瓜专利网。