2024最新测评:低代码平台在企业复杂应用场景的适用性如何?
低代码平台种类多,不好一概而论。但最近有做部分低代码平台的测评,供大家参考。
一个月前接到老板紧急任务:调研有没有一款低代码平台能开发我司的软件场景。我司是一家快速发展中的制造业企业,业务遍布全国,需要一个能够适应我们多样化业务需求、可灵活扩展的平台,包括但不限于生产监控、供应链管理、以及全国资产跟踪等。
传统的软件开发模式已无法满足我们对速度和敏捷性的需求,低代码开发平台虽然以快速开发能力被视为是解决此问题的理想选择。但我们的业务场景涉及大量的数据处理、多部门协作、复杂的用户交互,市面上的低代码平台是否能够适用于我们这种复杂场景,要打个问号“?”。
接下来的一个月里,我用了好多家产品,都各有千秋。简单的表单、列表、流程,拖拽式开发虽然很快,但深入下去就发现做不下去了。比如以下3个场景都很难实现:
(1)复杂的页面设计难
由于我们需要全国资产跟踪,这个系统的页面需要展示实时数据监控、支持多级目录视图和复杂的用户交互。所以低代码平台必须要能设计这种场景下的复杂页面。
我尝试了几个名气很大的低代码产品,基本都能提供栅格式布局的页面或者用容器去进行页面设计、组件拖拽,但这种布局方式很难解决复杂的布局问题, 比如嵌套、不规则展示等。虽然可以提供一些组件的样式配置参数,满足一些常见的样式调整,但是涉及比较复杂的样式时还是略显不足。
对于复杂的用户交互场景,多数的低代码工具仅会提供一些默认的图表联动、数据关联查询等,在处理一些轻量级应用,做交互显得得心应手。
好处是学习门槛低,弊端就是对于复杂交互场景有点力不从心。
(2)复杂的流程处理难
因为供应链管理方面,涉及多个部门和多个角色审批的复杂流程,需要模拟实际业务中的协作和决策过程。所以低代码平台必须要能处理超级复杂的审批流转流程、数据权限分配等等。
这一块,我试用的几个低代码平台的表现还不错。通过拖拽图形化流程算子的方式,以连线的方式配置流程审批及数据传递等动作。相比传统开发,可视化的操作会更方便,但不建议没有任何开发经验的小白上手。因为低代码这部分的设计只是相对减少敲代码的工作量,还是需要有编程思维才能实现。
像上图的流程流转,以及下图的多部门协同,这些轻量级低无代码平台都可以简洁的方式实现。
但缺点是,数据可以传递但不能处理,相当于没有逻辑概念,只能由代码完成后端事件处理。
(3)异构数据的处理难
我们制造业工厂遍布全国,集成了多种传感器和设备,每天处理的数据量比较大。所以低代码平台必须能够处理来自不同来源的大量数据,并且响应时间要比较快。确实条件很苛刻,但却是项目的实际要求情况。
实话说,试用的几个低代码平台并不擅长,从平台架构就可以看出在数据这一块能力都有缺失。简道云稍好,可依赖外部的ETL工具完成数据集成的工作,但普遍数据源能力有限,表单等数据只支持默认存储,不具备实时数据处理能力,无对外服务能力。
试用快绝望的时候,刷到了一家自称“数据驱动的企业级低代码软件开发平台”的产品织信Informat。于是,抱着死马当活马医的心态,看看这个织信Informat是不是真如自己宣传的那么牛杯??
从织信Informat的官网找到了几个他们认为有代表性的复杂场景的案例,一个是服装贸易类的PLM产品管理平台、一个是汽车零配件行业产、供、销一体化平台,还有一个是医院智慧后勤管理平台,给大家看看都做成什么样子,咱们眼见为实。
(1)一站式PLM产品管理平台
服装产品全周期管理,涉及从产品设计、采买、选品、BOM、工艺到成品的全过程管理,每个阶段都有独特的数据需求、业务流程、办公协同和决策支持点。要想建立统一的数据模型和业务流程框架,并实现自由切换点位进行产品的数据查询,都不简单,要用低代码去配置,有很大的挑战难度。
上图是织信Informa低代码开发的PLM系统界面,从这个页面可以看到它在页面结构、样式布局、页面交互这3个点做的还可以,有一定的复杂度。
①页面结构:其页面元素相对丰富,如图表、不同视图的列表、时间日期素材等在一个页面呈现;页面元素嵌套层级较深,官方说用到了织信Informat的布局容器嵌套列表、列表嵌套图表等。
②样式布局:页面布局呈现多样性,有多种排列方式、不规则展示数据、样式组合等。这里可以看出织信Informat具备不规则布局的能力。
③页面交互:页面中的交互元素(如输入框、按钮、下拉选择等)比较多,其实用户交互逻辑的难度相对较大。即使是传统代码开发,富交互型页面的开发和测试难度都比纯展示型页面大很多,更别提低代码了。但织信Informat在这里处理的还是可圈可点的,至少功能可以实现。
光看还没有感觉,谁知道是不是二次开发的呢?不如直接打开织信Informat,上手点点看、简单验证下是不是有这个几个能力、到底好不好使。
页面与布局上,织信Informat可以通过插入目录组件进行数据关联。同时,在布局组件上增加应用变量,该变量可以作为页面变量进行将选中的产品传至页面其他模块进行查询,实现模块变量传参。
样式与交互上,看图表的类型还是比较丰富的,常规的柱状、折线、饼图,非常规的散点、雷达、词云,以及复杂的GIS地图、关系曲线都有涉及,并且组件层和应用层提供细粒度的样式配置。
利用它的画布组件,可以自由布局。这用起来就比较像AXURE、墨刀等原型工具,区别是织信Informat针对每一个元素都可以绑定数据与逻辑交互事件,那么基于这样的原型,直接开发交付项目确实如其宣传的那样高效。
从这个PLM产品管理平台案例可以判断,织信Informat在设计复杂页面上面比较有优势。
(2)汽配产、供、销一体化平台
我对汽车零配件相关的业务理解大概是这样的,在配件生产过程中,业务类型多、审批部门多、角色多、流程分支多。下图是织信Informat开发的仓库管理系统中的一个审批流,看上去流程节点确实有点多。
官方介绍说,这个一体化平台涵盖各种流程条件判断,并涉及数据计算,以及8个部门、20+种角色判断,有100多个节点,用低代码平台实现相对复杂。
①流程节点:复杂的依赖和制约关系,包括顺序关系、并行关系、条件分支关系等,这里做的还可以。同时,织信Informat也有考虑到流程异常,设计撤回、表单回填、流程返回等。
②多部门协同:城管部门多、角色多,不同部门与角色之间的审批关系、权限划分、审批流转,织信Informat设计清晰,还比较灵活。
③服务编排:流程不仅多,还存在数据操作与接口调用,织信Informat通过服务编排的能力实现多接口聚合、实体操作后端逻辑开发、业务逻辑自动化等。
之前在别的低代码平台试用,服务编排的能力稍微有点欠缺,难以支撑大体量的、复杂的软件场景。织信Informat通过拖拽审批类、数据类、系统类等图形化设计,可以完成流程审批设计,在审批过程中实现数据处理、服务调用。在逻辑配置中,同样可通过图形化设计前后端逻辑,实现流程节点中复杂逻辑处理。
从这里看出,织信Informat在复杂流程的处理上表现不错,适用于企业级复杂应用,能够支撑更大体量的项目。
(3)医院智慧后勤管理平台
关于大型医院智慧后勤管理平台,有些大厂之前做的比较成熟了,换做一般的人还真做不了。因为医院业务的复杂在于:
设备种类繁多:涵盖医疗类、消防类、能耗类、视频安防类等多种品牌。每种设备和品牌可能具有不同的技术规格、通信接口和数据格式,这要求系统具备高度的灵活性和适应性来集成这些设备.
通信协议复杂:系统需支持N种不同的通信协议(如Modbus TCP、EA消防、MQTT、M-BUS等),每种协议都有其特定的数据交换规则和消息格式。实现这些协议的兼容性和互操作性是技术上的一大挑战。
海量数据处理:日新增数据量至少要10000条,这意味着系统需要具备高效的数据采集、存储、处理和分析能力。包括实时数据的处理、历史数据的归档、查询优化以及数据分析算法的应用。
很多低代码平台,缺失数据能力,因此,我对织信Informat通用抱有怀疑。
下图是织信Informat开发的一个医院智慧后勤管理平台架构图,官方介绍说,这个平台整合了多个省份的100多家医院,共计10大类20多个品牌的上千台设备,包括医疗类设别、消防类设备、能耗类设备、视频安防类等。实现设备协议共计8类,如Modbus TCP、EA消防、MQTT、M-BUS、萤石云FLV 、阿里云FLV、大象视频、Restful-API等,日新增数据量达10000多条。
对于医院后勤管理平台的开发,织信Informat有自己的解决方案,从下图可以看到这方面做的还可以。
为什么织信Informat能做到?看其产品架构图,原来是有数据底座,不愧是做大型软件起家的,基于底层数据做上层应用的开发,用数据驱动业务发展,一个平台实现 。其数据底座中就涵盖了IOT物联数据能力。
对于性能这块,官方给的说法是,设备延迟<1000ms,还算可以吧。
可惜的是,官方那个线上试用版本无法体验IOT能力,但是能够接入不同的数据源,前期测试不影响。能接的数据类型大概有40多种,国产、非国产、Rest-api都可以直连,且TCP、HTTP、Kaflka等通信协议协议也支持监听/轮询获取源数据,并以资产、ES、Restful等方式输出。
从这个案例可以看出,织信Informat在海量异构数据的处理上,有点小惊喜,没想到它有数据底座,对于数据的处理、性能方面的表现,都还不错。
最后总结:
总结一下,试用的几个低代码平台,各有各的优势。低无代码平台确实存在轻量级和企业级之分,轻量级适合微小企业去做一些偏SaaS化的管理类应用,而企业级能承接起现在大部分的数字化项目,不过上手门槛可能高一点。
对于我司所要实现的软件场景,对产品能力的需求较高,一轮测评下来,目前织信Informat更合适。织信Informat低代码开发平台,在企业级复杂应用场景中的适用性比较强,平台的数据处理能力、业务流程复杂性支持以及用户体验都可以给到90分以上,确实比较适合需要高度定制化和数据驱动的企业。
不过,用低代码开发,到底能不能降本增效,还没有实测。下阶段正式投入使用织信Informat后,再给铁子们做一个分享。感兴趣的铁子,可以去试用一下看看。
相关文章:

2024最新测评:低代码平台在企业复杂应用场景的适用性如何?
低代码平台种类多,不好一概而论。但最近有做部分低代码平台的测评,供大家参考。 一个月前接到老板紧急任务:调研有没有一款低代码平台能开发我司的软件场景。我司是一家快速发展中的制造业企业,业务遍布全国,需要一个…...

URL中 / 作为字符串,而不是路径。
在Harbor中,仓库路径是二级,有时候在打镜像的时候,会把 / 作为字符串打进去,URL访问的时候有可能就当路径了。 解决办法:/ 转义 %252F...

el-input只能输入指定范围的数字
el-input只能输入指定范围的数字 需求:el-input只能输入指定范围的数字,不采用el-input-number组件。 几个关键点如下 v-model.numbertype"number"min"1" max"999999" 数字的范围 οninput"validity.valid ||(value…...

数据结构编程实践20讲(Python版)—01数组
本文目录 01 数组 arrayS1 说明S2 举例S3 问题:二维网格中的最小路径求解思路Python3程序 S4 问题:图像左右变换求解思路Python3程序 S5 问题:青蛙过河求解思路Python3程序 写在前面 数据结构是计算机科学中的一个重要概念,用于组…...

数据库实验2—1
10-1 查询重量在[40,65]之间的产品信息 本题目要求编写SQL语句, 检索出product表中所有符合40 < Weight < 65的记录。 提示:请使用SELECT语句作答。 表结构: CREATE TABLE product (Pid varchar(20), --商品编号PName varchar(50), --商品名称…...

现代前端框架实战指南:React、Vue.js、Angular核心概念与应用
随着互联网技术的发展,前端开发变得越来越复杂。 为了应对这些挑战,前端框架应运而生,它们提供了丰富的功能和工具,帮助开发者更高效地构建 和维护大型前端应用。前端框架是现代Web开发中不可或缺的一部分,它们提供了…...

MySQL --用户管理
文章目录 1.用户1.1用户信息1.2创建用户1.3删除用户1.4修改用户密码 2.数据库的权限2.1给用户授权2.2回收权限 如果我们只能使用root用户,这样存在安全隐患。这时,就需要使用MySQL的用户管理。 1.用户 1.1用户信息 MySQL中的用户,都存储在系…...

详解前驱图与PV操作
前驱图、PV操作 前驱图与PV操作的结合例子:两个进程的同步问题使用PV操作实现同步 前驱图的实际应用更复杂的场景示例示例1:前驱图与PV操作的结合1. 前驱图表示2. 使用信号量(PV操作)实现同步进程的执行逻辑: 3. 示例代…...

孩子来加拿大上学真的那么轻松吗?(上)
点击文末“阅读原文”即可参与节目互动 剪辑、音频 / 卷圈 运营 / SandLiu 卷圈 监制 / 姝琦 封面 / 姝琦Midjourney 产品统筹 / bobo 这是拼娃时代第三十一期节目,经过了一年的沉寂,拼娃时代在今年九月份终于恢复更新啦,JunJun老师也…...

【算法篇】二叉树类(1)(笔记)
目录 一、认识二叉树 1. 二叉树的种类 (1)满二叉树 (2)完全二叉树 (3)二叉搜索树 (4)平衡二叉搜索树 2. 二叉树的存储方式 3. 二叉树的遍历方式 4. 二叉树的定义 二、Leet…...

《C++无锁编程:解锁高性能并发的新境界》
在当今的软件开发领域,并发编程的重要性日益凸显。随着多核处理器的普及,开发者们越来越需要利用并发来提高程序的性能和响应速度。而 C作为一种强大的编程语言,提供了多种技术来实现无锁编程,从而在并发环境下获得更高的性能和更…...

系统架构设计师教程 第9章 9.5 软件可靠性测试 笔记
9.5 软件可靠性测试 ★★★☆☆ 9.5.1 软件可靠性测试概述 软件测试者可以使用很多方法进行软件测试,如按行为或结构来划分输入域的划分测试, 纯粹随机选择输入的随机测试,基于功能、路径、数据流或控制流的覆盖测试等。 软件可靠性测试由可…...

如何使用ssm实现校园体育赛事管理系统的设计与实现+vue
TOC ssm713校园体育赛事管理系统的设计与实现vue 绪论 课题背景 身处网络时代,随着网络系统体系发展的不断成熟和完善,人们的生活也随之发生了很大的变化。目前,人们在追求较高物质生活的同时,也在想着如何使自身的精神内涵得…...

CSS 中的文本相关属性(line - height、font、letter - 属性、text - 属性)
目录 非 VIP 用户可前往公众号回复“css”进行免费阅读 line - height属性 字号与行高的取值约定 行高与盒子高度的关系 font、letter -属性 、text -属性 font属性 letter -属性 text - 属性 非 VIP 用户可前往公众号回复“css”进行免费阅读 line - height属性 字号与…...

mobaxterm、vscode通过跳板机连接服务器
目标服务器:111.111.11.11 跳板机:100.100.10.10 1. mobaxterm通过跳板机连接服务器 1.1 目标服务器信息 1.2 跳板机信息 1.3 登录 点击登录,会输入密码,成功 参考:https://blog.csdn.net/qq_40636486/article/det…...

鸿萌数据恢复:iPhone 手机被盗后应采取哪些措施?警惕这些骗局
天津鸿萌科贸发展有限公司从事数据安全服务二十余年,致力于为各领域客户提供专业的数据恢复、数据备份解决方案与服务,并针对企业面临的数据安全风险,提供专业的相关数据安全培训。 丢失昂贵的 iPhone 不仅会造成较大的经济损失,还…...

为了学习Python熬夜部署了Jupyter Notebook 6.x
文章目录 Docker拉取并构建容器安装部署jupyter对Jupyter使用过程问题总结1 没有代码提示怎么办?2 如果想切换python版本了怎么办?3 想在jupyter里面使用vim怎么办? 遇见的问题参考文章 怎么说,今天在学习Python的时候,…...

docker-文件复制(docker cp:用于在Docker主机和容器之间拷贝文件或目录)
文章目录 1、把宿主机的文件复制到容器内部1.1、查询 宿主机 root 下的文件1.2、docker cp /root/anaconda-ks.cfg spzx-redis:/root1.3、查看 spzx-redis 容器 中/root目录下是否有 anaconda-ks.cfg 文件 2、把容器中的文件 复制 到宿主机中2.1、查看 spzx-redis 容器 / 下的文…...

guava里常用功能
guava 是 Google 提供的一个 Java 库,提供了很多实用的工具类和方法,可以帮助开发者更高效地编写代码。以下是一些常用的 Guava 工具类及其功能示例: 1. Lists 用于操作列表的工具类。 import com.google.common.collect.Lists;List<In…...

su 命令:一键切换用户身份、提高su命令安全性的建议
一、命令简介 su 命令是 Linux 和 Unix 系统中的一个实用工具,用于切换用户身份。它允许当前登录用户在不退出登录会话的情况下,切换到另一个用户的身份。通常,su 用于从普通用户切换到 root 用户,或从 root 用户切换到其他…...

观察者模式(发布-订阅模式)
用途: (1)可用于拦截过滤器 (2)订单创建成功后的一些后续逻辑(消息提醒,订单打印,物品打包等) (3)需要由统一调度中心调度的一系列任务等 消息…...

耦合微带线单元的网络参量和等效电路公式推导
文档下载链接:耦合微带线单元的网络参量和等效电路资源-CSDN文库https://download.csdn.net/download/lu2289504634/89583027笔者水平有限,错误之处欢迎留言! 一、耦合微带线奇偶模详细推导过程 二、2,4端口开路 三、2端口短路、3端口开路 四…...

elasticsearch的Ingest Attachment插件的使用总结
安装 Ingest Attachment 插件 确保 Elasticsearch 已安装: 首先,请确保你已经安装并运行了 Elasticsearch。可以通过访问 http://localhost:9200 来检查是否正常运行。 安装插件: 使用以下命令在 Elasticsearch 中安装 Ingest Attachment 插…...

SemiDrive E3 MCAL 开发系列(4) – Gpt 模块的使用
一、 概述 本文将会介绍SemiDrive E3 MCAL GPT模块的基本配置,并且会结合实际操作的介绍,帮助新手快速了解并掌握这个模块的使用,文中的 MCAL 是基于 PTG3.0 的版本,开发板是官方的 E3640 网关板。 二、 Gpt 模块的主要配置 …...

前端导出页面PDF
import html2canvas from html2canvas import { jsPDF } from jspdf import { Loading } from element-ui let downloadLoadingInstance// 导出页面为PDF格式---使用插件html2canvas和jspdf插件 export function exportPDF(fileName, node) {downloadLoadingInstance Loading.…...

Jenkins的安装
1.简介 官网:https://www.jenkins.io 中文文档:Jenkins Jenkins 是一个开源的持续集成(CI)工具,用于自动化构建、测试和部署软件项目。它提供了一个易于使用和可扩展的平台,帮助团队更高效地开发和交付软…...

初学51单片机之I2C总线与E2PROM
首先先推荐B站的I2C相关的视频I2C入门第一节-I2C的基本工作原理_哔哩哔哩_bilibili 看完视频估计就大概知道怎么操作I2C了,他的LCD1602讲的也很不错,把数据建立tsp和数据保持thd,比喻成拍照时候的摆pose和按快门两个过程,感觉还是…...

C语言数组探秘:数据操控的艺术【下】
承接上篇,我们继续讲数组的内容。 八.二维数组的使用 当我们掌握了二维数组的创建和初始化,那我们怎么使用二维数组呢?其实二维数组访问也是使用下标的形式的,二维数组是有行和列的,只要锁定了行和列就能唯一锁定数组中…...

Jmeter关联,断言,参数化
目录 一、关联 边界提取器 JSON提取器 正则表达式提取器 跨线程关联 二、断言 响应断言 JSON断言 断言持续时间 三、参数化 用户参数 csv data setconfig csvread函数 一、关联 常用的关联有三种 1.边界提取器 2.JSON提取器 3.正则表达式提取器 接下来就详细讲述…...

嵌入式单片机底层原理详解
前言 此笔记面向有C语言基础、学习过数字电路、对单片机有一定了解且尚在学习阶段的群体编写,笔记中会介绍单片机的结构、工作原理,以及一些C语言编程技巧,对于还停留在复制模板、copy代码阶段的读者会有比较大的帮助,待学习完成后可以独立完成几乎所有单片机的驱动开发。 …...