一种基于可视化界面的终端代码自动生成方法和平台技术

技术编号:32365654 阅读:15 留言:0更新日期:2022-02-20 03:39
本发明专利技术公开了基于可视化界面的终端代码自动生成方法和平台,其中,用户管理模块用于管理用户账户,根据用户账户的账户类型分配代码编辑权限。用户根据代码编辑权限进入可视化代码开发界面后,利用代码编辑模块来创建并编辑应用,并通过调用组件库的组件绘制应用的页面,在进行页面绘制的同时,同步生成页面领域特定语言。页面开发完成后,通过代码编译模块基于选地的目标平台和页面领域特定语言,生成目标平台终端代码,并汇编为兼容目标平台的可执行程序,最后通过应用发布模块发布该可执行程序。通过本发明专利技术,开发人员可以根据发布需求,选择多个应用平台,将同一个应用的原始代码编译为多种目标平台终端代码,从而实现应用的跨端兼容性。端兼容性。端兼容性。

【技术实现步骤摘要】
一种基于可视化界面的终端代码自动生成方法和平台


[0001]本专利技术属于软件开发领域,具体涉及一种基于可视化界面的终端代码自动生成方法和平台。

技术介绍

[0002]通过拖拽方式生成代码的方式通常称之为低代码平台,它允许用户自行通过拖拽组件的方式自动组装并生成最终代码,最终的代码可以被再次编辑或直接引用至目标应用中,使得用户可以快速构建应用,而没有自由度且不允许再次编辑的平台又称之为零代码平台,可以统称为低代码平台。当前,低代码平台有两种技术路线:基于IDE(集成开发环境)框架的快速开发平台和基于模型驱动的应用平台。
[0003]基于IDE框架的快速开发平台方案:该方案将IDE充分可视化,开发者对前端界面组件、数据源绑定方式、数据模型、业务逻辑和工作流等都可以自由定义,平台将自动生成代码,开发者也可以添加自己的代码,对程序具有较强的控制能力,因此该方案具备更高的灵活性,可以设计出定制化程度高、逻辑复杂的软件。由于该方案仍涉及代码开发、部署等技术工作,所以它仍然是一个技术开发平台,需要较高的学习成本,主要价值是提高开发效率,减少重复劳动。
[0004]基于模型驱动的应用平台方案:用户通过可视化方式构建数据模型、视图、权限、工作流等,即可在平台提供的环境中运行,无需编译部署,更像一种傻瓜式的应用搭建平台。平台对各类组件、业务逻辑做了较高层级的封装,因此用户无法随心所欲修改界面风格、交互方式、处理逻辑等。该方案可以实现完全零代码,对用户技术要求不高,但需要具备业务抽象、建模能力。主要价值是降低开发门槛、快速适应变化。
[0005]现有的方案能够满足大多数场景的应用开发需求,但一些特定场景如用户希望在IDE上编辑的界面既能够部署到PC网页端,也能够部署到移动手机端,支持跨端的兼容需求,目前的技术平台并不满足。

技术实现思路

[0006]以下给出一个或多个方面的简要概述以提供对这些方面的基本理解。此概述不是所有构想到的方面的详尽综览,并且既非旨在指认出所有方面的关键性或决定性要素亦非试图界定任何或所有方面的范围。其唯一的目的是要以简化形式给出一个或多个方面的一些概念以为稍后给出的更加详细的描述之序。
[0007]本专利技术的目的在于解决上述问题,提供了一种基于可视化界面的终端代码自动生成方法和平台,用户在基于可视化界面的终端代码自动生成平台(以下有时简称终端代码自动生成平台)上通过调用各种组件来绘制自己创建的应用的界面。应用界面完成绘制后,同步生成界面领域特定语言并进行存储。当用户需要使用该应用时,可以根据开发需求选择一种或者多种目标平台,终端代码自动生成平台基于用户所选定的目标平台和应用的页面领域特定语言,可以生成多种目标平台终端代码,从而实现该应用的跨端的兼容需求。
[0008]本专利技术提供一种基于可视化界面的终端代码自动生成方法,包括以下步骤:
[0009]根据用户账户的账户类型,获取对应的代码编辑权限;
[0010]根据所述代码编辑权限,进入对应的可视化代码编辑界面;
[0011]在所述代码编辑界面创建应用,从预定义的画布库中调用页面的画布尺寸;
[0012]基于预定义的组件库,从所述组件库中调用所述组件绘制所述页面,并同步生成页面领域特定语言;
[0013]基于选定的目标平台和所述页面领域特定语言,生成目标平台终端代码,并汇编为兼容所述目标平台的可执行程序;
[0014]基于用户的发布请求,发布所述可执行程序。
[0015]根据本专利技术,用户在可视化界面上,通过调用预定义的组件库中的组件来绘制自己创建的应用界面,使得无技术经验的用户也可以开发自己的应用。此外,本本专利技术中用户在开发应用时,还可以从预定义的画布库中调用页面的画布尺寸,从而满足应用界面风格修改需求。当应用开发好以后,用户可以根据发开需求选择一个或者多个目标平台,基于用户所选定的目标平台和应用的页面领域特定语言生成多种目标平台终端代码。最后根据用户的发布需求,自动完成编译部署,从而降低了用户的开发时间和操作要求,提高了开发效率,减少重复劳动。
[0016]根据本专利技术的基于可视化界面的终端代码自动生成方法的一实施例,所述页面通过数据编辑单元、事件编辑单元和页面逻辑编辑单元进行绘制;其中,
[0017]所述数据编辑单元用于添加数据;
[0018]所述事件编辑单元用于为所述组件添加事件;
[0019]所述页面逻辑编辑单元用于设置组件行为。
[0020]根据本专利技术的基于可视化界面的终端代码自动生成方法的一实施例,所述组件行为包括数据绑定和事件绑定;其中,
[0021]所述页面编辑单元通过设置所述数据绑定将所述数据编辑单元与所述组件进行绑定,所述数据编辑单元进行所述组件的数据输入;
[0022]所述页面编辑单元通过设置所述事件绑定将所述事件编辑单元与所述组件进行绑定,所述事件编辑单元作为所述组件的事件输入。
[0023]根据本专利技术的基于可视化界面的终端代码自动生成方法的一实施例,所述事件包括网络请求和路由跳转;其中,
[0024]所述网络请求用于定义网络请求事件,所述组件通过执行所述网络请求事件获取网络响应;
[0025]所述路由跳转用于定义页面跳转事件,所述组件通过执行所述页面跳转事件跳转到由所述页面跳转事件指定的页面。
[0026]根据本专利技术的基于可视化界面的终端代码自动生成方法的一实施例,所述网络请求事件包括请求路径、请求头、请求参数和返回值;其中,所述返回值与所述组件的数据进行绑定,作为所述组件的异步数据。
[0027]根据本专利技术的基于可视化界面的终端代码自动生成方法的一实施例,所述页面调用所述组件时同步生成并更新所述页面的页面领域特定语言;其中,所述页面与所述页面领域特定语言一对一对应。
[0028]根据本专利技术的基于可视化界面的终端代码自动生成方法的一实施例,所述应用的应用配置单元基于多种目标平台设有多种平台配置;其中,所述平台配置还包括接口配置、路由配置、依赖配置和页面配置,所述应用的多个页面对应的页面领域特定语言与多种所述平台配置存储于所述应用配置单元。
[0029]根据本专利技术的基于可视化界面的终端代码自动生成方法的一实施例,代码生成引擎基于选定的所述目标平台调用所述应用的所述页面领域特定语言和所述平台配置,生成对应的目标平台终端代码。
[0030]根据本专利技术的基于可视化界面的终端代码自动生成方法的一实施例,所述代码生成引擎包括构建工具单元、代码编译单元、模板引擎单元和平台适配单元;其中,所述代码生成引擎生成所述目标平台终端代码还包括以下步骤:
[0031]所述模板引擎单元解析所述页面领域特定语言生成对应的模板代码;
[0032]基于所述应用的多个页面对应的模板代码,组装生成初级全量页面代码;其中,所述初级全量页面代码基于前端框架;
[0033]所述平台适配单元基于选定的目标平台选择所述平台配置,将所述初级全量页面代码与所述平台配置进行适配,确本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于可视化界面的终端代码自动生成方法,其特征在于,包括以下步骤:根据用户账户的账户类型,获取对应的代码编辑权限;根据所述代码编辑权限,进入对应的可视化代码编辑界面;在所述代码编辑界面创建应用,从预定义的画布库中调用页面的画布尺寸;基于预定义的组件库,从所述组件库中调用所述组件绘制所述页面,并同步生成页面领域特定语言;基于选定的目标平台和所述页面领域特定语言,生成目标平台终端代码,并汇编为兼容所述目标平台的可执行程序;基于用户的发布请求,发布所述可执行程序。2.根据权利要求1所述的基于可视化界面的终端代码自动生成方法,其特征在于,所述页面通过数据编辑单元、事件编辑单元和页面逻辑编辑单元进行绘制;其中,所述数据编辑单元用于添加数据;所述事件编辑单元用于为所述组件添加事件;所述页面逻辑编辑单元用于设置组件行为。3.根据权利要求2所述的基于可视化界面的终端代码自动生成方法,其特征在于,所述组件行为包括数据绑定和事件绑定;其中,所述页面编辑单元通过设置所述数据绑定将所述数据编辑单元与所述组件进行绑定,所述数据编辑单元进行所述组件的数据输入;所述页面编辑单元通过设置所述事件绑定将所述事件编辑单元与所述组件进行绑定,所述事件编辑单元作为所述组件的事件输入。4.根据权利要求3所述的基于可视化界面的终端代码自动生成方法,其特征在于,所述事件包括网络请求和路由跳转;其中,所述网络请求用于定义网络请求事件,所述组件通过执行所述网络请求事件获取网络响应;所述路由跳转用于定义页面跳转事件,所述组件通过执行所述页面跳转事件跳转到由所述页面跳转事件指定的页面。5.根据权利要求4所述的基于可视化界面的终端代码自动生成方法,其特征在于,所述网络请求事件包括请求路径、请求头、请求参数和返回值;其中,所述返回值与所述组件的数据进行绑定,作为所述组件的异步数据。6.根据权利要求1所述的基于可视化界面的终端代码自动生成方法,其特征在于,所述页面调用所述组件时同步生成并更新所述页面的页面领域特定语言;其中,所述页面与所述页面领域特定语言一对一对应。7.根据权利要求5所述的基于可视化界面的终端代码自动生成方法,其特征在于,所述应用的应用配置单元基于多种目标平台设有多种平台配置;其中,所述平台配置还包括接口配置、路由配置、依赖配置和页面配置,所述应用的多个页面对应的页面领域特定语言与多种所述平台配置存储于所述应用配置单元。8.根据权利要求1所述的基于可视化界面的终端代码自动生成方法,其特征在于,代码生成引擎基于选定的所述目标平台调用所述应用的所述页面领域特定语言和所述平台配置,生成对应的目标平台终端代码。
9.根据权利要求1

8任一项所述的基于可视化界面的终端代码自动生成方法,其特征在于,所述代码生成引擎包括构建工具单元、代码编译单元、模板引擎单元和平台适配单元;其中,所述代码生成引擎生成所述目标平台终端代码还包括以下步骤:所述模板引擎单元解析所述页面领域特定语言生成对应的模板代码;基于所述应用的多个页面对应的模板代码,组装生成初级全量页面代码;其中,所述初级全量页面代码基于前端框架;所述平台适配单元基于选定的目标平台选择所述平台配置,将所述初级全量页面代码与所述平台配置进行适配;所述代码编译单元基于所述前端框架编译所述初级全量页面代码,生成兼容所述目标平台的目标平台终端代码;所述构建工具单元基于应用请求,优化汇编所述目标平台终端代码,生成可执行程序。10.根据权利要求1所述的可视化界面的终端代码自动生成方法,其特征在于,所述组件包括布局组件、基础组件和业务区块组件;所述组件相互嵌套,用于绘制所述页面;其中,所述布局组件用于构建所述页面的布局结构;所述基础组件用于构建所述页面的基础内容;所述业务区块组件用于设置所述页面的业务逻辑。11.一种基于可视化界面的终端代码自动生成平台,其特征在于,包括用户管理模块、代码编辑模块、代码编译模块、应用...

【专利技术属性】
技术研发人员:周晔穆海洁胡鹏程黄超刘强王春娜何志宏赵天龙李传文
申请(专利权)人:上海汇付数据服务有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1