详细解说一次性低代码和持续化低代码的关键区别在哪里

news2024/11/17 2:31:08

为什么很多开发团队吐槽低代码开发平台,其中大致归结了几个方面的原因:

1、使用过后会降低对技术的依赖度,工具人的倾向更加严重

2、目前大部分的低代码都是一次性的低代码,仅仅是在第一次构建模型的时候,可以生成一些基础代码,在系统能够升级后期维护本质上还是源码开发,没有本质的区别

3、很多优秀的低代码开发平台是黑盒,不透明,担心使用后技术被绑架

4、担心低代码开发平台的局限性和扩展性存在问题

......

其实这些问题并不是什么深刻的问题,第一点是无法避免的,大势所趋,高效率的工具肯定会逐步渗透到传统的手工打造的行业,这个也是现在大家很少能看到“铁匠”的原因。 第三、四点,以JVS快速开发平台为例,是可以提供源码级交付的,就不用担心,且整体框架支持 “零代码”+“原生代码”的融合开发模式(这里就不深入讲解实现方式),所以不是问题,那么我们今天详细捋一捋第二条,一次性的低代码和持续化的低代码的关键点在哪里?

聊这个问题之前,先要聊下 “数据持久化” 让低代码触手可及,以mybatis 为例说一下,它主要在数据库和java程序之间构建一套可以快速操作的标准入口,形成我们所谓的增删改查(CRUD),可以支持程序通过动态调用的方式去操作数据库,而无需详细的了解数据库的具体SQL操作。

如上图所示,mybatis 、mybatis plus 把这个过程做得很好,把库表对应的CRUD的接口代码做得非常不错,技术人员只需要建库建表与写一些业务逻辑调用,中间机械重复性的工作都交给数据持久的工具去干掉了,这样势必提升很大一部分的工作效率。

但随着低代码的概念不断持续发酵与升华,有跟多的管理者希望不仅仅是生成中间的CRUD代码,能否把另外两端的代码也生成了,这个也就是 “零代码”的出发点了,而且这种模式有个bug一旦加入了业务代码后,就很难再进行二次配置化,所以这也成为“一次性”的低代码,如果我们要实现“持续化”低代码 如何做呢?

以这个为出发点,那么有几个问题是无法回避的:

1、数据库表需要动态构建,最好是根据界面上的业务需求,自动创建、修改底层的库表接口,数据库表的柔性化就是一个问题。

2、需要将原来的部署代码实现功能转变为配置数据+功能动态渲染, 实现功能的热插拔,也就是生成的不再是代码,而是配置数据,那么需要构建多个能力引擎把配置数据 渲染成功能(多个之间如何确定边界,这个我们可以专门聊聊),从而实现无需启停环境实现功能所配即所得。

3、各个引擎之间如何更好的做好数据联动与参数控制,从而实现业务能力的联动性配置。

我们再次以JVS快速开发平台为例,JVS构建了一个套动态的数据模型的引擎,它核心的功能:

1、基于用户配置的功能字段,动态创建、修改底层的数据库表结构

基于表单自动构建库表结构:

基于列表页的自动构建

2、实现多个引擎(列表、表单、逻辑、流程)之间的数据联动使用

数据模型是各个能力引擎之间对数据加工、存储的核心,也是各个引擎能做好联动使用的基础,而且可以做到数据层与页面级的分层级控制。而且有了动态的数据模型,传统的代码(前端、后端)也是可以接入到配置的过程中来,从而实现0代码+100%代码的融合使用。

3、向低代码配置提供持久化的数据增删改查 ,那么让整体内可以实现业务逻辑的配置化,通过可视化的操作配置,实现各种服务的能力拼装。

所以,当前的低代码,能启动灵魂且画龙点睛的 是动态的数据模型。

JVS基础框架开源地址:https://gitee.com/software-minister/jvs

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/682516.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CDC介绍

CDC介绍 1 CDC Change Data Capture:定义了一种场景,即识别并捕获数据库表中数据的变更,并交付给下游进一步处理。CDC是对针对行级数据记录的。其中数据的变更信息,即 CDC 的数据结构,包括变更是什么样的操作&#x…

《JDK8特性深入讲解》学习笔记

Lambda表达式 如果不适用lambda表达式的话,可以使用匿名内部类,但是代码会显得有点多 lambda表达式其实就是匿名内部类 Lambda表达式简化了匿名内部类的使用,语法更加简单。 语法规则 (参数类型 参数名称) -> {代码体; } Lambda表达…

Unreal 5 实现Data Table 数据表格的使用

数据是一个游戏重要的组成部分,按分工,数据会交由策划去配置,所以,你的数据不可能直接写到蓝图里面,而是有一个专门的数据表格去配置。 大家通用的方式是策划在Excel内编辑完成,然后通过工具生成游戏需要使…

RabbitMQ安装以及SpringBoot整合RabbitMQ

SpringBootMQ整合Rabbit RabbitMQ安装以及SpringBoot整合 1、Docker安装RabbitMQ #拉取rabbitmq镜像 docker pull rabbitmq#启动RabbitMQ docker run -d --hostname my-rabbit --name rabbit -p 15672:15672 -p 5672:5672 rabbitmq#安装图形化插件 #进入容器 docker exec -i…

ubantu16.04搭建Qt环境

目录 ubantu16.04搭建Qt环境 下载opensource 安装qmake 安装g以及依赖库 配置环境 编译原码 安装make 查看qmake是否安装 配置环境变量 qmake编译c/c代码 安装qtcreator Linux编译Qt代码 ubantu16.04搭建Qt环境 下载opensource 「下载 qt-everywhere-opensource-s…

用于配电室的内部环境监控系统设计与产品选型

摘要:配电室是配电系统的重要组成部分,影响着电力用户的用电需求,需要保障其安全、可靠运行。针对配电室内部环境进行了深入分析,设计了一种内部环境监控系统。通过该系统可以采集配电室内部的温度、湿度、液位、SF6气体和烟雾&am…

伪随机码详解

本专栏包含信息论与编码的核心知识,按知识点组织,可作为教学或学习的参考。markdown版本已归档至【Github仓库:https://github.com/timerring/information-theory 】或者公众号【AIShareLab】回复 信息论 获取。 文章目录 伪随机码伪随机序列…

期末复习【网络安全】

期末复习【网络安全】 前言推荐期末复习第1章 引言1.1 计算机安全概念1.2 OSI安全体系结构 61.3 安全攻击 71.3.1 被动攻击1.3.2 主动攻击 第2章 对称加密和消息机密性2.1 对称加密原理 232.1.3 Feistel密码结构 25 2.2 对称分组加密算法 272.2.1 数据加密标准2.2.2 三重DES2.2…

【C#】并行编程实战:任务并行性(下)

本章继续介绍任务并行性,因篇幅所限,本章为下篇。 6、处理任务异常 所有优秀的程序员都擅长高效地处理异常,这也是并行编程最重要的方面之一。任务并行库(TPL)提供了一种高效的设计来处理异常:任务中发生的…

山西电力市场日前价格预测【2023-06-26】

日前价格预测 预测明日(2023-06-26)山西电力市场全天平均日前电价为395.92元/MWh。其中,最高日前价格为477.34元/MWh,预计出现在19: 00。最低日前电价为309.90元/MWh,预计出现在13: 00。以上预测仅供学习参考&#xff…

Android中的EventBus变迁史

Android中的EventBus变迁史 什么是EventBus? EventBus是软件架构中使用的一种通信机制,用于促进系统内不同组件或服务之间的事件交换。它为组件提供了一种发布和订阅事件的方法,从而实现松散耦合和异步通信。 EventBus充当中央集线器或消息…

SpringBoot 性能优化的主要组件及特点

SpringBoot 性能优化的主要组件及特点 简介 在开发应用程序时,性能是一个非常重要的因素。如果应用程序的性能不佳,那么它可能会影响用户的体验,甚至会导致系统崩溃。而在 SpringBoot 应用程序中,我们可以通过一些组件来优化应用…

PCB板为什么要做表面处理?你知道吗

PCB板为什么要做表面处理? 由于PCB上的铜层很容易被氧化,因此生成的铜氧化层会严重降低焊接质量,从而降低最终产品的可靠性和有效性,为了避免这种情况的发生,需要对PCB进行表面处理。 常见的表面处理方式包括OSP、喷…

Java虚拟机(JVM)面试题

JVM 说一下 JVM 的主要组成部分及其作用? 总体来说,方法区和堆是所有线程共享的内存区域;而虚拟机栈、本地方法栈和程序计数器的运行是线程私有的内存区域,运行时数据区域就是我们常说的JVM的内存 类加载子系统:根据…

SpringBoot 使用 MockMvc 进行 Web 集成测试

SpringBoot 使用 MockMvc 进行 Web 集成测试 在 SpringBoot 应用程序中,我们可以使用 MockMvc 进行 Web 集成测试。MockMvc 是一个测试框架,可以模拟 HTTP 请求和响应,并且可以使用 Spring MVC 的控制器进行测试。MockMvc 可以让我们测试 Sp…

Apollo分布式配置中心(一)

目录 什么是配置? 什么是配置中心? 配置中心需要满足条件 什么是Apollo? Apollo特性 Apollo执行流程 Apollo安装 Git地址: 用户手册: 环境准备: 使用idea 的git clone 拉取源码 修改Apollo\scripts…

面对AI,要(能)当“杜兰特”吗?

大家好,我是老三,先说一下这篇文章没什么干货,就是一篇随笔。 今天闲来无事,在掘金上刷到一篇文章:GPT-4都来了,我们还需要刷算法题和背八股文吗?:https://juejin.cn/post/72111208…

总结Linux 中实时查看日志的3种方法

一、前言 我们大家应该都知道如何在 Linux 中查看文件,比如可以使用 cat 或者 less 命令。 这对于查看静态文件来说是可以的;日志文件是动态的,其内容随时会变化,要监测日志文件,需要在日志文件内容改变时也能实时看到…

配置右键菜单功能 :一键csv转excel

配置右键菜单功能 :一键csv转excel 无需点开文件,双击即可以生成新的excel文件 步骤: 1、配置Python,安装依赖库 pip install openpyxl pip install pandas2、创建Python文件 csv_to_excel.py # -*- coding:utf-8 -*- impor…

【光伏集群、需求响应】市场模式下光伏用户群的电能共享与需求响应模型(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…