本发明涉及软件开发,尤其涉及一种用于低代码平台的自开发系统、方法及电子设备。
背景技术:
1、在当前的软件开发领域,低代码平台正在逐渐被广泛使用。低代码平台是一种可以快速生成应用程序的开发工具,是通过少量代码或零代码就可以快速生成新应用的开发平台。它允许开发者通过可视化拖拉拽组件的方式来设计应用界面并关联后端数据,而无需手动编写大量的代码。
2、然而,在使用低代码平台自开发中,由于低代码平台提供的组件、页面无法满足用户需求,导致低代码平台无法支持自行开发,为后续在线编辑代码、在线调试带来了不便。
技术实现思路
1、鉴于以上所述现有技术的缺点,本技术公开了一种用于低代码平台的自开发系统、方法及电子设备,用于克服低代码平台自开发中无法自开发的问题。
2、本技术的第一方面公开了一种用于低代码平台的自开发系统,包括:前端,基于monorepo管理架构而创建,对所述前端中的业务代码与公共组件进行抽离,根据所述业务代码在所述前端分别构建平台管理端、应用移动端和应用web端;依赖包,布局于所述前端,用于存储所述公共组件与自开发模板,且所述自开发模板集成脚手架,响应于来自所述应用移动端或所述应用web端的开发指令,通过所述脚手架自定义配置模板,所述脚手架根据所述开发指令的业务类型确定是否调用所述公共组件进行开发管理,以完成所述模板的自定义配置,生成用于替换所述自开发系统中占位符所处位置的数据的自开发包;后端,对所述自开发包进行解析,确定代码文件中预替换所述占位符位置的描述文件,将所述占位符所处位置替换成所述描述文件形成自开发应用,并予以发布。
3、于本技术第一方面的某些实施例中,所述自开发模板包括显示模板的框架页面的可视化界面,所述可视化界面在呈现的图形化界面中布局多个业务控件,多个所述业务控件分别为公共组件控件、公共方法、开发模板、命令行工具、命名控件、新建控件与安装控件,通过拖拉拽方式组合各所述业务控件,以形成自开发模板的业务流程逻辑;所述公共组件控件,用于调用所述依赖包存储的所述公共组件来构建所述模板;所述公共方法,用于配置各所述公共组件调用的业务流程;所述开发模板,用于存储各类样式的模板;所述命令行工具,用于初始化本地环境,对输入的指令进行解析,按照解析结果调用所述新建控件来开发组件,生成压缩文件;所述命名控件,用于接收所述自开发包的命名参数,将所述自开发包对应的代码文件拷贝到本地的模板,并将所述命名参数替换成所述模板中的占位符;所述安装控件,用于接收来自仓库的所述依赖包,根据目录查找安装路径,依据所述安装路径安装所述依赖包;所述新建控件,用于依据接收的命名打开相应目录文件的所述自开发包进行编译打包,生成打包文件并进行压缩处理,等待上传压缩文件。
4、于本技术第一方面的某些实施例中,所述自开发包包括样式文件、自开发包描述文件、静态资源文件与直译式脚本文件,其中,所述自开发包描述文件嵌有本地开发入口、线上访问地址、打包待拷贝的文件地址、自开发组件以及本地开发对应的路由地址,所述静态资源文件存储有所述模板的图片与字体。
5、于本技术第一方面的某些实施例中,所述应用移动端和所述应用web端分别在入口文件嵌有自定义加载机制,所述自定义加载机制在代码文件中预设有占位符,以使所述后端在发布应用时,通过所述占位符将所述应用替换成所述自开发包中的描述文件。
6、于本技术第一方面的某些实施例中,所述平台管理端、所述应用移动端和所述应用web端分别设置有前端控件,所述前端控件包括第一管理端组件、数据资源控件、数据库控件以及路由权限控件;所述后端设置有后端控件,所述后端控件包括流程图组件、打包配置、事件引擎、公式引擎、页面引擎、第二管理端组件、控制器、widget与element-ui。
7、于本技术第一方面的某些实施例中,所述第一管理端组件根据api类型来管理所述数据库控件,建立api与数据库控件中各组件之间的映射关系,其中,基于所述api类型,从所述数据库控件中配置相关组件;基于预设运行模型,将所述api类型与相关组件进行耦合运行,通过预设编程模型,对耦合结果进行解耦,得到解耦结果,并基于所述解耦结果,建立映射关系。
8、于本技术第一方面的某些实施例中,所述第二管理端组件接收各所述后端控件相应的拖拉拽信号,组合业务流程配置业务属性,以使所述控制器按照所述业务流程以及业务属性进行响应。
9、于本技术第一方面的某些实施例中,所述自开发系统集成在所述低代码平台上,所述低代码平台包括可视化模块、业务构建模块和流程引擎模块,其中,所述可视化模块包括图形化界面、业务控件和流程编辑器,所述图形化界面用于布局所述业务控件和所述流程编辑器;所述流程编辑器通过拖拉拽方式组合所述业务控件,以形成业务流程逻辑;所述业务构建模块,用于动态执行所述可视化模块的属性和配置,编写在所述可视化模块上的代码;所述流程引擎模块,用于驱动所述可视化模块按照业务流程进行响应。
10、本技术的第二方面公开了一种用于低代码平台的自开发系统,包括:基于monorepo管理架构创建前端,对所述前端中的业务代码与公共组件进行抽离,根据所述业务代码在所述前端分别构建平台管理端、应用移动端和应用web端;将依赖包布局于所述前端,来存储所述公共组件与自开发模板,且所述自开发模板集成脚手架,响应于来自所述应用移动端或所述应用web端的开发指令,下载脚手架并通过所述脚手架自定义配置模板,初始化本地环境,根据所述开发指令的业务类型确定是否调用所述公共组件进行开发管理,以完成所述模板的自定义配置,通过命令工具行打包生成用于替换所述自开发系统中占位符所处位置的数据的自开发包;判断所述自开发包的类型,若所述自开发包类型为页面,则创建自开发页面,并在所述自开发页面中输入名称匹配相应自开发资源包确定所述自开发包;若所述自开发包类型为组件,则在页面编辑中拖入自开发组件以及公共组件进行配置完成为所述组件的所述自开发包;利用后端对所述自开发包进行解析,确定代码文件中预替换所述占位符位置的描述文件,将所述占位符所处位置替换成所述描述文件形成自开发应用,并予以发布。
11、本技术的第三方面公开了一种电子设备,包括:处理器及存储器;所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述电子设备执行上述的方法。
12、本技术的有益效果:通过在低代码平台集成自开发系统,基于monorepo管理架构创建前端,在所述前端分别构建平台管理端、应用移动端和应用web端,响应于来自所述应用移动端或所述应用web端的开发指令,通过脚手架自定义配置模板,所述脚手架根据所述开发指令的业务类型确定是否调用所述公共组件进行开发管理,以完成所述模板的自定义配置,生成用于替换所述自开发系统中占位符所处位置的数据的自开发包,以使后端通过所述占位符替换自开发包中描述文件内容,促使前端能够直接加载,这样,不仅使得前端支持本地调测,同时,能够按照用户需求实现自开发,还有利于前端实现在线编辑代码、在线调试,也提高了系统开发效率。