CN115857901B - 一种基于流程图搭建跨平台服务端源代码的系统及方法 - Google Patents

一种基于流程图搭建跨平台服务端源代码的系统及方法 Download PDF

Info

Publication number
CN115857901B
CN115857901B CN202310175250.8A CN202310175250A CN115857901B CN 115857901 B CN115857901 B CN 115857901B CN 202310175250 A CN202310175250 A CN 202310175250A CN 115857901 B CN115857901 B CN 115857901B
Authority
CN
China
Prior art keywords
flow chart
node
platform
logic
code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310175250.8A
Other languages
English (en)
Other versions
CN115857901A (zh
Inventor
黄子豪
施天宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Hurricane Engine Information Technology Co ltd
Original Assignee
Nanjing Hurricane Engine Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing Hurricane Engine Information Technology Co ltd filed Critical Nanjing Hurricane Engine Information Technology Co ltd
Priority to CN202310175250.8A priority Critical patent/CN115857901B/zh
Publication of CN115857901A publication Critical patent/CN115857901A/zh
Application granted granted Critical
Publication of CN115857901B publication Critical patent/CN115857901B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明涉及计算机技术领域,具体涉及一种基于流程图搭建跨平台服务端源代码的系统及方法,该系统包括后端代码平台、逻辑编辑器、前端流程平台以及用户编辑界面;前端流程平台用于获取用户编辑界面采集的用户操作指令,对用户操作指令响应,按用户操作指令进行流程图节点的插入;逻辑编辑器用于实时获取前端流程平台排列组合的流程图节点插入信息,生成流程图节点插入信息的业务逻辑块;后端代码平台用于接收逻辑编辑器传输的业务逻辑块,对业务逻辑块进行翻译后,生成流程图节点插入信息对应的目标语言的源代码,得到反馈用户操作指令信息的完整的业务逻辑代码,解决低代码平台逻辑层面难以表达的问题。

Description

一种基于流程图搭建跨平台服务端源代码的系统及方法
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种基于流程图搭建跨平台服务端源代码的系统及方法。
背景技术
随着计算机技术及信息化的发展,各类计算机系统的需求也越来越大。其中,在传统的计算机系统程序开发时,开发周期较长,且成本较高,需要专业的程序员开发及维护,成本过高。于是随之诞生了低代码平台,可以在不需要程序员的情况进行一个系统的开发。
但是,目前的低代码平台对于复杂数据结构或者复杂的逻辑上,所使用的普通的逻辑交互器难以表达,亦或者太复杂的逻辑交互器普通用户接触时难以理解,导致低代码平台逻辑层面难以表达。
发明内容
有鉴于此,针对太过简单的逻辑交互器难以满足用户复杂情况的需求,太过复杂的逻辑交互器用户的学习成本过高的问题,本发明的目的是提供一种基于流程图搭建跨平台服务端源代码的系统及方法,利用可视化流程图交互的方式,替代传统的逻辑交互器,通过流成图节点的排列组合,进行逻辑编译,在翻译成目标编程语言的源代码,用以解决低代码平台逻辑层面难以表达的问题。
为实现上述目的,本发明提供了以下技术方案:
根据本发明的第一方面,提供了一种基于流程图搭建跨平台服务端源代码的系统,包括后端代码平台、逻辑编辑器、前端流程平台以及用户编辑界面;所述前端流程平台,用于获取所述用户编辑界面采集的用户操作指令,对所述用户操作指令响应,按所述用户操作指令进行流程图节点的插入;所述逻辑编辑器,用于实时获取所述前端流程平台排列组合的流程图节点插入信息,生成所述流程图节点插入信息的业务逻辑块;其中,每个所述流程图节点均对应有预先定义好翻译代码属性的程序逻辑块;所述后端代码平台,作为跨平台监控后台,用于接收所述逻辑编辑器传输的业务逻辑块,对所述业务逻辑块进行翻译后,生成所述流程图节点插入信息对应的目标语言的源代码,得到反馈用户操作指令信息的完整的业务逻辑代码。
作为本发明的进一步方案,所述基于流程图搭建跨平台服务端源代码的系统,还包括流程图的节点库,所述节点库为用于将翻译代码写入流程图属性中,搭建在所述用户编辑界面可视化配置的流程图节点,所述节点库中放置有表达程序逻辑块的流程图节点。
作为本发明的进一步方案,所述节点库与至少一个后端代码平台的前端流程平台通讯连接,每个后端代码平台的前端流程平台与至少一个用户编辑界面进行通信,所述后端代码平台通过逻辑编辑器传输和翻译所述用户编辑界面的用户操作指令,在后端代码平台生成一段完整的业务逻辑代码。
作为本发明的进一步方案,每个后端代码平台的逻辑编辑器与用户编辑界面进行通信,也与相邻后端代码平台的用户编辑界面之间交互通讯,进行交换数据并跨平台操作。
作为本发明的进一步方案,所述前端流程平台包括指令接收模块、解析响应模块、节点放置模块和组合验证模块;所述指令接收模块,用于接收交互的用户编辑界面采集的用户操作指令;所述解析响应模块,用于解析前端流程平台接收的所述用户编辑界面传输的用户操作指令,并根据所述用户操作指令的解析结果遍历所述节点库确定对应的流程图节点;所述节点放置模块,用于将确定的流程图节点放置在前端流程平台的流程图操作区域,通过连线顺序排列构成流程图;所述组合验证模块,用于将排列构成流程图上报至逻辑编辑器,通过所述逻辑编辑器按照预先定义好翻译代码属性的程序逻辑块翻译成目标编程语言的源代码,并与流程图节点比对,验证与每个流程图节点的流程图属性中的翻译代码是否一致。
作为本发明的进一步方案,所述用户编辑界面通过传感器感知用户端触摸屏接收的用户编辑界面操作的受力状态信息,所述指令接收模块默认采用主动探测执行用户编辑界面的用户操作信息收集工作,并支持显示所述前端流程平台反馈的交互反馈信息。
作为本发明的进一步方案,所述节点库包括节点翻译模板、节点指定模块、节点制作模块、节点发布模块以及节点存储模块;所述节点翻译模板,用于在代码中定义节点翻译的模板;所述节点指定模块,用于根据写死的代码指定每个待生成的流程图节点的模板;所述节点制作模块,用于将预设的翻译代码与指定的模块进行交互,制作生成流程图节点;所述节点发布模块,用于将生成的流程图节点发布到节点库;所述节点存储模块,用于将发布到节点库的流程图节点保存,用以可视化配置在后端代码平台的前端流程平台以及用户编辑界面上。
作为本发明的进一步方案,所述前端流程平台还设有用于进行流程图属性编辑的属性面板,所述逻辑编辑器在生成流程图节点插入信息的业务逻辑块时,基于blockly开源库实现,通过blockly开源库用于将连线顺序排列构成流程图编译成排列组合好的blockly块的程序逻辑,用以生成一段完整的业务逻辑代码。
根据本发明的第二方面,提供了一种基于流程图搭建跨平台服务端源代码的方法,包括以下步骤:
前端流程平台获取所述用户编辑界面采集的用户操作指令,对所述用户操作指令响应,按所述用户操作指令进行流程图节点的插入;
所述逻辑编辑器实时获取所述前端流程平台排列组合的流程图节点插入信息,生成所述流程图节点插入信息的业务逻辑块;其中,每个所述流程图节点均对应有预先定义好翻译代码属性的程序逻辑块;
所述后端代码平台作为跨平台监控后台,接收所述逻辑编辑器传输的业务逻辑块,对所述业务逻辑块进行翻译后,生成所述流程图节点插入信息对应的目标语言的源代码,得到反馈用户操作指令信息的完整的业务逻辑代码。
作为本发明的进一步方案,所述基于流程图搭建跨平台服务端源代码的方法,还包括:
基于用户编辑界面的用户操作指令从节点库中选择流程图节点通过连线顺序排列构成流程图;
基于blockly开源库定义表达程序逻辑的块,将流程图中每个流程图节点编译成一段排列组合好的blockly块;
将blockly块进行排列组合拼成一个完整程序的业务逻辑,每个blockly块被预先定义好的程序逻辑翻译成目标编程语言的源代码,生成一段完整的业务逻辑代码。
与现有技术相比,本发明提供的技术方案可以包括以下有益效果:
1、本发明从后端代码平台对前端流程平台对应的用户编辑界面进行用户操作的视角出发,通过流程图的交互方式来替代传统的逻辑交互器,针对太过简单的逻辑交互器难以满足用户复杂情况的需求,太过复杂的逻辑交互器用户的学习成本过高的问题,从本质上进行改善,将程序逻辑转化为可视化的流程图提供给用户端进行操作,利用排列构成的流程图来进行逻辑表达,在后端代码平台对流程图进行翻译,生产流程图节点插入信息对应的目标语言的源代码,得到反馈用户操作指令信息的完整的业务逻辑代码,对于新上手的用户来说更加容易上手以及理解,在进行一些比较复杂逻辑的编写时,也更容易表达出来自己的逻辑,利于自己的思考,也有利于缩短开发周期,降低维护成本。
2、采用跨平台的节点库调用方式,通过获取用户编辑界面的用户操作指令进行流程图节点的插入,利用可视化的视图搭建,生产完整的支持web网页、手机端网页、安卓、ios以及微信小程序的源代码,源代码可以包含完整的视图代码以及语言逻辑的代码,流程图节点只是其中的一个逻辑编辑的模块,只需借助流程图以就可以完成视图搭建以及生成web、安卓、ios以及微信小程序的源代码,通过流程图也可以生成服务器端的代码,借助可视化的流程图翻译成所有的编程语言,解决低代码平台逻辑层面难以表达的问题,大大降低代码逻辑表达的难度,提高基于流程图搭建跨平台服务端源代码的系统的可用性、易用性以及实用性。
本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。应当理解的是,以上的一般描述和后文的细节描述仅是的和解释性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例。在附图中:
图1为本发明实施例提供的基于流程图搭建跨平台服务端源代码的系统的架构图。
图2为本发明实施例提供的一种基于流程图搭建跨平台服务端源代码的系统中前端流程平台的结构框图。
图3为本发明实施例提供的一种基于流程图搭建跨平台服务端源代码的系统中节点库的结构框图。
图4为本发明实施例提供的一种基于流程图搭建跨平台服务端源代码的方法的流程图。
图5为本发明实施例提供的一种基于流程图搭建跨平台服务端源代码的方法中节点制作的流程示意图。
本申请目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
鉴于现有低代码平台对于复杂数据结构或者复杂的逻辑上,所使用的普通的逻辑交互器难以表达,亦或者太复杂的逻辑交互器普通用户接触时难以理解,导致低代码平台逻辑层面难以表达。
为解决上述问题,本申请的实施例提供了一种基于流程图搭建跨平台服务端源代码的系统及方法,利用可视化流程图交互的方式,替代传统的逻辑交互器,通过流成图节点的排列组合,进行逻辑编译,在翻译成目标编程语言的源代码,用以解决低代码平台逻辑层面难以表达的问题。
以下结合附图对本发明实施例的具体实现进行详细描述。
图1为本发明实施例提供的基于流程图搭建跨平台服务端源代码的系统的架构图。
如图1所示,本发明实施例提供的一种基于流程图搭建跨平台服务端源代码的系统,包括后端代码平台100、逻辑编辑器200、前端流程平台300以及用户编辑界面400。
所述前端流程平台300,用于获取所述用户编辑界面400采集的用户操作指令,对所述用户操作指令响应,按所述用户操作指令进行流程图节点的插入。
所述逻辑编辑器200,用于实时获取所述前端流程平台300排列组合的流程图节点插入信息,生成所述流程图节点插入信息的业务逻辑块;其中,每个所述流程图节点均对应有预先定义好翻译代码属性的程序逻辑块。
所述后端代码平台100,作为跨平台监控后台,用于接收所述逻辑编辑器200传输的业务逻辑块,对所述业务逻辑块进行翻译后,生成所述流程图节点插入信息对应的目标语言的源代码,得到反馈用户操作指令信息的完整的业务逻辑代码。
在上述实施例中,流程图节点位于流程图的节点库500中,所述基于流程图搭建跨平台服务端源代码的系统中所包括的流程图的节点库500,用于将翻译代码写入流程图属性中,搭建在所述用户编辑界面400可视化配置的流程图节点,所述节点库500中放置有表达程序逻辑块的流程图节点。
在基于流程图搭建跨平台服务端源代码的系统实现程序逻辑操作时,首先加载搭建流程图所需的节点库500和进行流程图属性设置的属性面板,其中,节点库500中放置有流程图节点。
其中,在本发明提供的优选实施方式中:
所述前端流程平台300还设有用于进行流程图属性编辑的属性面板,所述逻辑编辑器200在生成流程图节点插入信息的业务逻辑块时,基于blockly开源库实现,通过blockly开源库用于将连线顺序排列构成流程图编译成排列组合好的blockly块的程序逻辑,用以生成一段完整的业务逻辑代码。
在实现程序逻辑操作时,由用户编辑界面400采集的用户操作指令,基于用户操作指令执行流程图的交互操作,从节点库500中选择对应的流程图节点通过连线顺序排列构成流程图;然后,基于blockly开源库定义表达程序逻辑的块,将流程图中每个流程图节点编译成一段排列组合好的blockly块,将blockly块进行排列组合拼成一个完整程序的业务逻辑,每个blockly块被预先定义好的程序逻辑翻译成目标编程语言的源代码,生成一段完整的业务逻辑代码。
其中,在本发明提供的优选实施方式中:
所述节点库500与至少一个后端代码平台100的前端流程平台300通讯连接,每个后端代码平台100的前端流程平台300与至少一个用户编辑界面400进行通信,所述后端代码平台100通过逻辑编辑器200传输和翻译所述用户编辑界面400的用户操作指令,在后端代码平台100生成一段完整的业务逻辑代码。
在本实施例中,在跨平台应用时,多个后端代码平台100可以共用一个节点库500,每个后端代码平台100的前端流程平台300也可以通过多个用户编辑界面400进行操作,即每个前端流程平台300可以对应多个操作用户,每个操作用户均可以通过其操作的用户编辑界面400下达用户操作指令。
其中,在本发明提供的优选实施方式中:
每个后端代码平台100的逻辑编辑器200与用户编辑界面400进行通信,也与相邻后端代码平台100的用户编辑界面400之间交互通讯,进行交换数据并跨平台操作。
在本实施例中,每个用户的用户编辑界面400也可以绑定至少一个后端代码平台100的逻辑编辑器200,可以通过一个用户编辑界面400执行多个后端代码平台100程序逻辑工作。
更进一步的,在本发明提供的优选实施方式中:
参见图2所示,所述前端流程平台300包括指令接收模块301、解析响应模块302、节点放置模块303和组合验证模块304。
所述指令接收模块301,用于接收交互的用户编辑界面400采集的用户操作指令。
所述解析响应模块302,用于解析前端流程平台300接收的所述用户编辑界面400传输的用户操作指令,并根据所述用户操作指令的解析结果遍历所述节点库500确定对应的流程图节点。
所述节点放置模块303,用于将确定的流程图节点放置在前端流程平台300的流程图操作区域,通过连线顺序排列构成流程图。
所述组合验证模块304,用于将排列构成流程图上报至逻辑编辑器200,通过所述逻辑编辑器200按照预先定义好翻译代码属性的程序逻辑块翻译成目标编程语言的源代码,并与流程图节点比对,验证与每个流程图节点的流程图属性中的翻译代码是否一致。
本发明的前端流程平台300在执行用户操作指令时,通过上述的指令接收模块301、解析响应模块302、节点放置模块303和组合验证模块304依次完成流程图节点的插入、连线顺序排列构以及比对验证,在每个流程图节点的流程图属性中的翻译代码与翻译成目标编程语言的源代码一致时,完成流程图的可视化操作。
本发明的基于流程图搭建跨平台服务端源代码的系统,通过使用搭建流程图这种通俗易懂的交互方式来实现一套完整的逻辑交互器,最终实现了通过流程图可以转化为源代码的功能。使用流程图来表达逻辑,易于用户上手,在面对一些复杂的逻辑表达的时候也可以轻松的表达出来。
更进一步的,在本发明提供的优选实施方式中:
所述用户编辑界面400通过传感器感知用户端触摸屏接收的用户编辑界面400操作的受力状态信息,所述指令接收模块301默认采用主动探测执行用户编辑界面400的用户操作信息收集工作,并支持显示所述前端流程平台300反馈的交互反馈信息。
示例性的,所述用户编辑界面400为通过触控显示屏显示的用户可编辑操作界面,在用户手触操作时,主动探测执行用户编辑界面400的用户操作信息收集工作,支持显示所述前端流程平台300反馈的交互反馈信息,进行与前端流程平台300的交互操作,例如,拖拽流程图节点以及进行流程图的排列组合等操作。
更进一步的,在本发明提供的优选实施方式中:
参见图3所示,所述节点库500包括节点翻译模板501、节点指定模块502、节点制作模块503、节点发布模块504以及节点存储模块505。
所述节点翻译模板501,用于在代码中定义节点翻译的模板。
所述节点指定模块502,用于根据写死的代码指定每个待生成的流程图节点的模板。
所述节点制作模块503,用于将预设的翻译代码与指定的模块进行交互,制作生成流程图节点。
所述节点发布模块504,用于将生成的流程图节点发布到节点库500。
所述节点存储模块505,用于将发布到节点库500的流程图节点保存,用以可视化配置在后端代码平台100的前端流程平台300以及用户编辑界面400上。
在本实施例中,采用节点翻译模板501、节点指定模块502、节点制作模块503、节点发布模块504以及节点存储模块505制作流程图节点时,可以在代码中预先定义节点翻译模板501,并指定流程图节点所需的节点翻译模板501;在后台进行流程图节点的交互制作,根据放置的交互组件,通过可视化搭建配置好每个节点对应的交互界面;将交互界面进行交互后的流程图节点发布到节点库500中以供放置到流程图中。
其中,所述放置的交互组件包括用于流程图交互操作的输入框和下拉框。
流程图节点需要在代码中定义节点翻译模版,然后在后台可视化搭建页面上,做出流程图节点的交互。例如:拖拽输入框、下拉框之类的交互操作。
其中,在本发明提供的优选实施方式中:
每个流程图节点对应的交互界面还用于通过交互设置每个流程图的属性,以调整流程图节点编译成blockly块的结果。
其中,在本发明提供的优选实施方式中:
流程图可以采用基于谷歌的blockly开源库实现的。其中,所述blockly开源库为JavaScript编程语言的客户端库,用于创建基于块的可视化编程语言(VPL)和编辑器。其中,blockly为在 Apache 许可证2.0下发布的免费和开源软件,通常基于Web浏览器中运行,并且在视觉上类似于 Scratch 语言,blockly也正在为移动操作系统 Android 和iOS实施,尽管目前并非所有基于浏览器的功能都可以在这些平台上使用。
其中,blockly开源库可以在 JavaScript、Lua、Dart、Python 或 PHP 中生成代码,所述blockly开源库使用链接的可视块编写代码,使编写代码更容易,还可以定制为以任何文本程序语言生成代码。
因为每个流程图节点都有预设的翻译代码,翻译成blockly的块,所以,流程图可以翻译成blockly的块,blockly的块再翻译成目标语言的源代码。可选地,所述节点库500中放置的每个流程图节点均具有预设的翻译代码,用于翻译成blockly的块,以通过将流程图翻译成blockly的块,在将blockly的块翻译成目标语言的源代码。
在本实施例中,基于blockly开源库定义表达程序逻辑的块,blockly开中定义了多种表达程序逻辑的块,示例性的,所述表达程序逻辑的块的类型可以为执行块、变量块、逻辑分支块或者循环块,都是基于预设写入的代码定义完成的,所述表达程序逻辑的块之间按照顺序串联。
示例性的,当一个业务逻辑需要从后端接口获取一个列表数据,然后在表格展示时,则需要一个从接口获取数据的网络请求的块,然后还需要一个循环的块,把接口获取到的数据遍历一遍,最后需要赋值的块把每一行数据插入到表格中。
本发明从后端代码平台100对前端流程平台300对应的用户编辑界面400进行用户操作的视角出发,通过流程图的交互方式来替代传统的逻辑交互器,针对太过简单的逻辑交互器难以满足用户复杂情况的需求,太过复杂的逻辑交互器用户的学习成本过高的问题,从本质上进行改善,将程序逻辑转化为可视化的流程图提供给用户端进行操作,利用排列构成的流程图来进行逻辑表达,在后端代码平台100对流程图进行翻译,生产流程图节点插入信息对应的目标语言的源代码,得到反馈用户操作指令信息的完整的业务逻辑代码,对于新上手的用户来说更加容易上手以及理解,在进行一些比较复杂逻辑的编写时,也更容易表达出来自己的逻辑,利于自己的思考,也有利于缩短开发周期,降低维护成本。
需要说明的是,所述表达程序逻辑的块的类型包括但不局限于上述的执行块、变量块、逻辑分支块、循环块等,通过这些块的排列组合可以拼成一个完整程序的业务逻辑,而每个块可以通过被定义好的程序逻辑编译成目标编程语言的源代码。
请参照图4所示,图4为本发明实施例提供的一种基于流程图搭建跨平台服务端源代码的方法的流程示意图。本申请的实施例中提供的一种基于流程图搭建跨平台服务端源代码的方法,该方法包括以下步骤:
前端流程平台300获取所述用户编辑界面400采集的用户操作指令,对所述用户操作指令响应,按所述用户操作指令进行流程图节点的插入;
所述逻辑编辑器200实时获取所述前端流程平台300排列组合的流程图节点插入信息,生成所述流程图节点插入信息的业务逻辑块;其中,每个所述流程图节点均对应有预先定义好翻译代码属性的程序逻辑块;
所述后端代码平台100作为跨平台监控后台,接收所述逻辑编辑器200传输的业务逻辑块,对所述业务逻辑块进行翻译后,生成所述流程图节点插入信息对应的目标语言的源代码,得到反馈用户操作指令信息的完整的业务逻辑代码。
其中,在本实施例中,参见图4所示,所述基于流程图搭建跨平台服务端源代码的方法,还包括:
基于用户编辑界面400的用户操作指令从节点库500中选择流程图节点通过连线顺序排列构成流程图;
基于blockly开源库定义表达程序逻辑的块,将流程图中每个流程图节点编译成一段排列组合好的blockly块;
将blockly块进行排列组合拼成一个完整程序的业务逻辑,每个blockly块被预先定义好的程序逻辑翻译成目标编程语言的源代码,生成一段完整的业务逻辑代码。
流程图由多种流程图节点通过连续顺序排列组合而成,每个流程图节点放置到流程图的连线上时,流程图节点的信息同步存储于流程图上,基于节点翻译模板501以组合形成一个blockly块的排列组合,生成一段完整的业务逻辑代码。
在本实施例中,参见图4所示,流程图节点位于流程图的节点库500中,所述基于流程图搭建跨平台服务端源代码的系统中所包括的流程图的节点库500,用于将翻译代码写入流程图属性中,搭建在所述用户编辑界面400可视化配置的流程图节点,所述节点库500中放置有表达程序逻辑块的流程图节点。
在本实施例中,前端流程平台300在按照预先定义好翻译代码属性的程序逻辑块翻译成目标编程语言的源代码时,包括以下步骤:
指令接收模块301接收交互的用户编辑界面400采集的用户操作指令;
解析响应模块302解析前端流程平台300接收的所述用户编辑界面400传输的用户操作指令,并根据用户操作指令的解析结果遍历所述节点库500确定对应的流程图节点;
节点放置模块303将确定的流程图节点放置在前端流程平台300的流程图操作区域,通过连线顺序排列构成流程图;
组合验证模块304将排列构成流程图上报至逻辑编辑器200,通过逻辑编辑器200按照预先定义好翻译代码属性的程序逻辑块翻译成目标编程语言的源代码,并与流程图节点比对,验证与每个流程图节点的流程图属性中的翻译代码是否一致。
在本实施例中,用户编辑界面400通过传感器感知用户端触摸屏接收的用户编辑界面400操作的受力状态信息,所述指令接收模块301默认采用主动探测执行用户编辑界面400的用户操作信息收集工作,并支持显示所述前端流程平台300反馈的交互反馈信息。
在本实施例中,参见图5所示,构建流程图节点时,包括以下步骤:
在代码中定义节点翻译的模板;
根据写死的代码指定每个待生成的流程图节点的模板;
将预设的翻译代码与指定的模块进行交互,制作生成流程图节点;
将生成的流程图节点发布到节点库500;
将发布到节点库500的流程图节点保存,用以可视化配置在后端代码平台100的前端流程平台300以及用户编辑界面400上。
制作流程图节点时,可以在代码中预先定义节点翻译模板501,并指定流程图节点所需的节点翻译模板501;在后台进行流程图节点的交互制作,根据放置的交互组件,通过可视化搭建配置好每个节点对应的交互界面;将交互界面进行交互后的流程图节点发布到节点库500中以供放置到流程图中。
采用跨平台的节点库500调用方式,通过获取用户编辑界面400的用户操作指令进行流程图节点的插入,利用可视化的视图搭建,生产完整的支持web网页、手机端网页、安卓、ios以及微信小程序的源代码,源代码可以包含完整的视图代码以及语言逻辑的代码,流程图节点只是其中的一个逻辑编辑的模块,只需借助流程图以就可以完成视图搭建以及生成web、安卓、ios以及微信小程序的源代码,通过流程图也可以生成服务器端的代码,借助可视化的流程图翻译成所有的编程语言,解决低代码平台逻辑层面难以表达的问题,大大降低代码逻辑表达的难度,提高基于流程图搭建跨平台服务端源代码的系统的可用性、易用性以及实用性。
需要注意的是,上述附图仅是根据本发明的实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (6)

1.一种基于流程图搭建跨平台服务端源代码的系统,其特征在于,包括后端代码平台、逻辑编辑器、前端流程平台以及用户编辑界面;
所述前端流程平台,用于获取所述用户编辑界面采集的用户操作指令,对所述用户操作指令响应,按所述用户操作指令进行流程图节点的插入;
所述逻辑编辑器,用于实时获取所述前端流程平台排列组合的流程图节点插入信息,生成所述流程图节点插入信息的业务逻辑块;其中,每个所述流程图节点均对应有预先定义好翻译代码属性的程序逻辑块;
所述后端代码平台,作为跨平台监控后台,用于接收所述逻辑编辑器传输的业务逻辑块,对所述业务逻辑块进行翻译后,生成所述流程图节点插入信息对应的目标语言的源代码,得到反馈用户操作指令信息的完整的业务逻辑代码;
所述基于流程图搭建跨平台服务端源代码的系统,还包括流程图的节点库,所述节点库为用于将翻译代码写入流程图属性中,搭建在所述用户编辑界面可视化配置的流程图节点,所述节点库中放置有表达程序逻辑块的流程图节点;
所述节点库与至少一个后端代码平台的前端流程平台通讯连接,每个后端代码平台的前端流程平台与至少一个用户编辑界面进行通信,所述后端代码平台通过逻辑编辑器传输和翻译所述用户编辑界面的用户操作指令,在后端代码平台生成一段完整的业务逻辑代码;
所述节点库包括节点翻译模板、节点指定模块、节点制作模块、节点发布模块以及节点存储模块;
所述节点翻译模板,用于在代码中定义节点翻译的模板;
所述节点指定模块,用于根据写死的代码指定每个待生成的流程图节点的模板;
所述节点制作模块,用于将预设的翻译代码与指定的模块进行交互,制作生成流程图节点;
所述节点发布模块,用于将生成的流程图节点发布到节点库;
所述节点存储模块,用于将发布到节点库的流程图节点保存,用以可视化配置在后端代码平台的前端流程平台以及用户编辑界面上;
其中,所述前端流程平台还设有用于进行流程图属性编辑的属性面板,所述逻辑编辑器在生成流程图节点插入信息的业务逻辑块时,基于blockly开源库实现,通过blockly开源库用于将连线顺序排列构成流程图编译成排列组合好的blockly块的程序逻辑,用以生成一段完整的业务逻辑代码。
2.根据权利要求1所述的基于流程图搭建跨平台服务端源代码的系统,其特征在于,每个后端代码平台的逻辑编辑器与用户编辑界面进行通信,也与相邻后端代码平台的用户编辑界面之间交互通讯,进行交换数据并跨平台操作。
3.根据权利要求2所述的基于流程图搭建跨平台服务端源代码的系统,其特征在于,所述前端流程平台包括指令接收模块、解析响应模块、节点放置模块和组合验证模块;
所述指令接收模块,用于接收交互的用户编辑界面采集的用户操作指令;
所述解析响应模块,用于解析前端流程平台接收的所述用户编辑界面传输的用户操作指令,并根据所述用户操作指令的解析结果遍历所述节点库确定对应的流程图节点;
所述节点放置模块,用于将确定的流程图节点放置在前端流程平台的流程图操作区域,通过连线顺序排列构成流程图;
所述组合验证模块,用于将排列构成流程图上报至逻辑编辑器,通过所述逻辑编辑器按照预先定义好翻译代码属性的程序逻辑块翻译成目标编程语言的源代码,并与流程图节点比对,验证与每个流程图节点的流程图属性中的翻译代码是否一致。
4.根据权利要求3所述的基于流程图搭建跨平台服务端源代码的系统,其特征在于,所述用户编辑界面通过传感器感知用户端触摸屏接收的用户编辑界面操作的受力状态信息,所述指令接收模块默认采用主动探测执行用户编辑界面的用户操作信息收集工作,并支持显示所述前端流程平台反馈的交互反馈信息。
5.一种基于流程图搭建跨平台服务端源代码的方法,其特征在于,应用于权利要求4所述的基于流程图搭建跨平台服务端源代码系统,该方法包括以下步骤:
前端流程平台获取所述用户编辑界面采集的用户操作指令,对所述用户操作指令响应,按所述用户操作指令进行流程图节点的插入;
所述逻辑编辑器实时获取所述前端流程平台排列组合的流程图节点插入信息,生成所述流程图节点插入信息的业务逻辑块;其中,每个所述流程图节点均对应有预先定义好翻译代码属性的程序逻辑块;
所述后端代码平台作为跨平台监控后台,接收所述逻辑编辑器传输的业务逻辑块,对所述业务逻辑块进行翻译后,生成所述流程图节点插入信息对应的目标语言的源代码,得到反馈用户操作指令信息的完整的业务逻辑代码。
6.根据权利要求5所述的基于流程图搭建跨平台服务端源代码的方法,其特征在于,还包括:
基于用户编辑界面的用户操作指令从节点库中选择流程图节点通过连线顺序排列构成流程图;
基于blockly开源库定义表达程序逻辑的块,将流程图中每个流程图节点编译成一段排列组合好的blockly块;
将blockly块进行排列组合拼成一个完整程序的业务逻辑,每个blockly块被预先定义好的程序逻辑翻译成目标编程语言的源代码,生成一段完整的业务逻辑代码。
CN202310175250.8A 2023-02-28 2023-02-28 一种基于流程图搭建跨平台服务端源代码的系统及方法 Active CN115857901B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310175250.8A CN115857901B (zh) 2023-02-28 2023-02-28 一种基于流程图搭建跨平台服务端源代码的系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310175250.8A CN115857901B (zh) 2023-02-28 2023-02-28 一种基于流程图搭建跨平台服务端源代码的系统及方法

Publications (2)

Publication Number Publication Date
CN115857901A CN115857901A (zh) 2023-03-28
CN115857901B true CN115857901B (zh) 2023-07-07

Family

ID=85659338

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310175250.8A Active CN115857901B (zh) 2023-02-28 2023-02-28 一种基于流程图搭建跨平台服务端源代码的系统及方法

Country Status (1)

Country Link
CN (1) CN115857901B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102915242A (zh) * 2012-09-26 2013-02-06 北京广利核系统工程有限公司 一种利用图形化操作实现代码编程的方法
CN107943464A (zh) * 2017-12-18 2018-04-20 苏州蜗牛数字科技股份有限公司 一种程序逻辑的图形可视化展示和编辑的方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020007483A1 (en) * 1997-01-29 2002-01-17 Lopez Luis R. Interactive flow visualization, graphical editing and analysis of textual languages
US20210263834A1 (en) * 2020-02-20 2021-08-26 4Logik LLC Code Generation Platform

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102915242A (zh) * 2012-09-26 2013-02-06 北京广利核系统工程有限公司 一种利用图形化操作实现代码编程的方法
CN107943464A (zh) * 2017-12-18 2018-04-20 苏州蜗牛数字科技股份有限公司 一种程序逻辑的图形可视化展示和编辑的方法

Also Published As

Publication number Publication date
CN115857901A (zh) 2023-03-28

Similar Documents

Publication Publication Date Title
CN108021363B (zh) 可视化游戏逻辑编辑方法及系统
US11556314B2 (en) Mixed mode programming
CN113094037B (zh) 表单和工作流的交互方法、开发平台、设备及存储介质
US10255044B2 (en) Method and system for modifying deployed applications
US9021440B1 (en) System and method for automated test script generation
US20150294039A1 (en) Graphical Design Verification Environment Generator
US11175895B2 (en) Code generation and simulation for graphical programming
CN112199086A (zh) 自动编程控制系统、方法、装置、电子设备及存储介质
CN105791385A (zh) 用于控制两个或多个远程会话的方法和系统
CN112558954A (zh) 结合rpa和ai的信息抽取方法、装置、介质及电子设备
CN112668290A (zh) 基于网格化设计的动态表单生成方法及系统
AU2014100798A4 (en) A visual role and transition based method and system for developing complex web applications
CN113010168B (zh) 一种基于场景树的用户界面生成方法
CN115857901B (zh) 一种基于流程图搭建跨平台服务端源代码的系统及方法
Chen et al. NNBlocks: a Blockly framework for AI computing
CN116909553A (zh) 一种页面在线开发及本地编译运行系统
CN114238072A (zh) Hil需求设计方法、装置、计算机设备和存储介质
CN114217794A (zh) 页面设计方法、客户端设备、可读介质及程序产品
CN114090002A (zh) 前端界面构建方法、装置、电子设备和存储介质
US10460015B1 (en) Assimilation in multi model webpage composition
CN113296759A (zh) 用户界面处理方法、用户界面处理系统、设备及存储介质
Silva et al. Model driven engineering for performance testing in mobile applications
US20200409672A1 (en) Constraint based authoring
Pulido Applying behavior driven development practices and tools to low-code technology
Caffiau et al. Generating interactive applications from task models: A hard challenge

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant