聊聊「低代码」的实践之路
区块链、低代码、元宇宙、AI智能;
01
【先来说说背景】
这个概念由来已久,但是在国内兴起,是最近几年;
低代码即「Low-Code」;
指提供可视化开发环境,可以用来创建和管理软件应用;
简单的说;
就是可以通过各种组件的拖拽,实现页面的创建,交互流程和逻辑,以及数据层面的管理,更加高效的实现需求;
早先在数据公司时;
见识过低代码的应用,也参与过部分研发,比如元数据平台,BI分析等;
不过,当时还是以数据管理的工具来定义项目,并非是低代码;
从「2020年底」开始;
实际上,那个时间节点,低代码平台的应用已经形成趋势了;
现在的公司,将「低代码」平台的使用「规划」到「业务体系」中;
后来看,这是一个非常正确的决策;
在当时的讨论会议上,大Boss给的理念;
非核心业务全面集成到低代码平台中,将核心业务的边缘流程,以实践的方式迁出小部分到低代码平台中;
并且给了理由,是基于「行业趋势」和「业务周期」的整体考虑,才做出的决策;
其实,所谓的降本增效,也会遵循上述的规律;
不过遭到技术部的「稍微」反对;
主管还当场给了理由,说明为何不支持这样的决策;
但是最终的讨论结果,出自部门老大的建议;
不动核心业务,先将「边缘业务」迁入,根据「效果」再决策后续规划;
当然大Boss最终认同这个结论;
以实践三年后的今天来看,人和人的「差距」确实挺大的;
组织内「Boss」层面的决策正确,「部门」层面的执行节奏,「员工」层面的后知后觉;
有感觉到明显的认知「差距」;
02
【聊聊最初的疑惑】
客观来说;
在研发领域内,大部分玩家对新事物都有一定的「排斥」情绪;
新事物意味「打破习惯」和诸多「不确定」因素;
主观来说;
个人虽然也有排斥新事物的心理,但是很少质疑有趋势性的事物,当低代码应用成为流行趋势时,个人选择跟随就好;
技术部为何下意识的反对低代码应用?
从最近三年的实践和采坑经验来说,以下问题可能都会成为「否定」的因素;
【问题1】平台选择;
这里重点考虑两个维度:普遍性和业务特性;
如果只是常规的业务数字化转型,建议优先从大的生态选择,比如「某微」或「某钉」,相对而言会更便捷;
如果有行业定制化的需求,则需要有针对性调研,比如财务系统,人事管理等;
【问题2】成本困扰;
思考一个问题:
简单业务需求从整体协作去考虑,涉及的时间成本、人力成本、以及产品技术的维护成本;
计算成本之后,和低代码平台的费用做对比;
客观的「数字」最有说服力;
这里依旧是降本增效的策略:更低的时间,更高的效率,更少的成本,更多的回报;
【问题3】业务适用性;
低代码应用刚火起来不久,并没有发展到各行各业都有成熟合适的解决方案;
所以针对低代码平台的使用;
最大的争议点就是,没有找到符合业务特性的平台,但是管理层急于追求数字化和降本;
这种情况下;
如果盲目引入到业务体系中,后期难免会成为烫手的山芋;
所以充分的调研,以及对市场上各种案例的参考,从而客观的分析公司当前的业务阶段,是否有必要引入低代码应用;
【问题4】复杂后的维护性;
涉及到一个决策问题,低代码应用到底谁来维护?
业务人员还是研发角色?
从实践经验看;
建议是由业务方将需求对接到研发团队,个人所在的组织中,是一个产品加一个研发,一起负责低代码平台的迭代;
值得注意的是;
低代码应用具有一定的使用门槛,在使用的时候需要遵循普遍的开发原则和规范,以此保证持续可维护性;
03
【简单聊聊原理】
在说低代码的实践之前,先来分析一下基础性的原理;
如果是普遍的共性业务;
常规就是页面的渲染和展示,数据层面的增删改查,计算层面的加减乘除,当然还要考虑模型整体的驱动和交互逻辑;
如果是行业特色的业务;
则需要低代码平台中进行深度定制化的功能,提供其特定的解决方案;
从技术角度进行原理的简单分析;
在低代码系统中,十分考验前后端的整体「封装」能力;
前端,页面中各种组件和工具的管理,交互时各种动态计算,页面整体的数据填充;
后端,提供整体的模型驱动能力,封装不同场景下的公共的交互接口,从而实现各个模块的流程和逻辑;
数据,比较常规的手段有两种;
【1】进行纵向的表结构设计,数据存储层面使用键值对的方式,构建搜索查询的逻辑比较复杂;
【2】数据采用JSON的格式,在数据体量大的情况下,要考虑查询效率问题;
【3】数据还要提供基础的分析和导入导出能力,以及API层面或者数据通道的搬运能力;
实际上低代码应用的现状,还会提供各种应用和生态的集成能力;
追求功能的全面性;
可以参考「某微」或「某钉」的低代码平台的集成能力;
04
【组织内实践案例】
明白低代码的基础原理之后,再来聊聊近「3年」的实践;
首先要明确一个「认知」;
如果只是从研发角度「纵向」看;
业务可能就是产品矩阵中所涉及的各种事务流程,以及参与流程管理和协作的各个角色;
角度没有问题,但是有点孤立;
但是,「横向」的从组织的整体来看;
即便抛开产品层面,还存在诸多的协作事项,业务流程的管理;
这些普遍不会被集成到产品矩阵中;
但是同样值得「信息化」和「数字化」管理,从而打造「标准化」流程;
在引入低代码平台之后,会形成如下的应用体系;
在工作中,如果涉及多部门间的「横向」交集;
那么会接触到很多第三方应用,而非单纯的研发部门搭建的产品体系;
有的应用极具行业的特色,有的应用倾向共性业务的管理,有的应用倾向私域客群的维护;
不同平台的共通点,都是可以提供定制化的低代码能力;
最为关键的是;
这些平台都提供「对外」的「交互」能力,可以是第三方应用之间的交互,也可以是与内部的产品体系交互;
在这种应用体系内;
组织在实践近一年之后,各种核心的业务流程,都全面的信息化和数字化管理,并且从应用层面打通了不同业务的交互路径;
最后,经过对比论证,业务流的「效率」得到极大的提升;
05
【实践带来的反思】
与低代码平台联系最密切的一个概念,就是「数字化」;
在数据公司时;
见识到数据层面可以挖掘的价值,智能化的分析决策流程,但是缺乏应用层面的数字化实践;
现在的组织中;
强烈的追求业务数字化管理,并且有幸见识到了完整的实践过程,才最终形成比较清晰的认知;
不得不承认,这是一个普通玩家,「后知后觉」的反思;
反思低代码应用;
各厂商基于自身所在的行业,以及技术和产品的实践经验,将其封装在复杂的低代码平台中;
从而提供,各种「相对简单」的业务流模型搭建;
这样可以支撑各种业务场景的数字化管理,并且低代码搭建的产品,本身具备很强的灵活可变能力,都有助于效率的提升;
在业务完成数字化之后,自然可以提升各个场景的统筹效率;
对于当下最热门的「AI领域」来说,其依赖「数字化」的基础,进而推进流程和决策的「智能化」管理;
反思技术的发展;
以前总觉得,所谓的信息化、数字化、智能化「遥不可及」;
但是区区几年的时间,就已经普及到各行各业;
成为当下最大的热点;
所以,面对新兴事物的时候,快速理解和衡量其价值,确实会给认知层面带来巨大的差距;
06
【最后聊几句问题】
随着低代码应用的普及;
越来越多的业务人员具备「简单」的开发能力,必然会给部分研发人员的带来负面影响;
无疑;
加剧互联网的「内卷」趋势,本就卷得一塌糊涂的行业,现在更是雪上加霜;
然而趋势的形成,不会以个人意志为转移;
就像现在的「AI智能」一样,领先的公司不会顾及反对的声音一路狂奔,落后的公司一边喊着反对又一边疯狂追赶;
真正的趋势,本着不可逆跟随就好的心态。
相关文章:

聊聊「低代码」的实践之路
区块链、低代码、元宇宙、AI智能; 01 【先来说说背景】 这个概念由来已久,但是在国内兴起,是最近几年; 低代码即「Low-Code」; 指提供可视化开发环境,可以用来创建和管理软件应用; 简单的说…...

(一)服务发现组件 Eureka
1、Eureka 简介 Eureka 是Spring Cloud Netflix 微服务套件中的一部分, 它基于Netflix Eureka 做了二次封装, 主要负责完成微服务架构中的服务治理功能。我们只需通过简单引入依赖和注解配置就能让Spring Boot 构建的微服务应用轻松地与Eureka 服务治理…...

学会笔记本电脑录屏快捷键,轻松实现录屏!
案例:笔记本电脑录屏有快捷键吗? 【我每次打开笔记本电脑录屏都要耗费比较长的时间,这样会影响到我录屏的效率。在这里想问一下,有没有快速打开电脑录屏的方法?】 在日常的工作、学习、娱乐中,我们经常需…...

( “树” 之 Trie) 208. 实现 Trie (前缀树) ——【Leetcode每日一题】
知识点回顾 : Trie,又称前缀树或字典树,用于判断字符串是否存在或者是否具有某种字符串前缀。 ❓208. 实现 Trie (前缀树) 难度:中等 Trie(发音类似 “try”)或者说 前缀树 是一种树形数据结构ÿ…...

算法训练Day40:343. 整数拆分 96.不同的二叉搜索树
文章目录 整数拆分题解(动态规划)贪心 不同的二叉搜索树题解 整数拆分 CategoryDifficultyLikesDislikesContestSlugProblemIndexScorealgorithmsMedium (62.22%)11660--0 Tags 数学 | 动态规划 Companies 给定一个正整数 n ,将其拆分为…...

设计模式及代码
1、工厂方法模式(Factory Method Pattern): 定义一个用于创建对象的接口,让子类决定实例化哪一个类。应用场景:当一个类不知道它所必须创建的对象的类时;一个类希望由它的子类来指定它所创建的对象时。 抽…...

9.java程序员必知必会类库之加密库
前言 密码学在计算机领域源远流长,应用广泛。当前每时每刻,每一个连接到互联网的终端,手机,电脑,iPad都会和互联网有无数次的数据交互,如果这些数据都是明文传输那将是难以想象的。为了保护用户隐私&#…...

C技能树:for循环:九九乘法表
使用for循环,打印九九乘法表。下列四个选项中有一项无法实现该功能,请找出该错误选项。 #include <stdio.h> int main(int argc, char** argv) {int i 0;int j 0;(_____1_____)return 0; } int row 0; int col 0; for(i 0; i < 8…...

Win10老是蓝屏收集错误信息重启无效怎么办?
Win10老是蓝屏收集错误信息重启无效怎么办?有用户遇到了电脑开机蓝屏的情况,收集错误信息重启电脑之后,依然无法解决问题。那么这个问题要怎么去进行解决呢?接下来我们来看看以下具体的处理方法教学吧。 准备工作: 1、…...

Redis入门学习笔记【五】Redis在分布式环境下常见的应用场景
一、分布式锁 当多个进程不在同一个系统中,用分布式锁控制多个进程对资源的操作或者访问。 与之对应有线 程锁,进程锁。 分布式锁可以避免不同进程重复相同的工作,减少资源浪费。 同时分布式锁可以避免破坏数据正 确性的发生, …...

Python ZIpFile 解惑:GBK 编码与乱码现象
文章目录 参考描述铺垫乱码现象编码与解码编码解码 字符集Unicode 字符集UTF-8CP437Zip 文件与 CP437 编码 GB2312GB2012GBK 单字节编码与多字节编码 溯源通用标志位与语言编码标志ZipFile 所支持的两种编码方式GBK 编码与 Zip 应用乱码现象产生的原因 解决 参考 项目描述维基…...

【LeetCode】213. 打家劫舍 II
213. 打家劫舍 II(中等) 思路 这道题是 198.打家劫舍 的拓展版,区别在于:本题的房间是环形排列,而198.题中的房间是单排排列。 将房间环形排列,意味着第一间房间和最后一间房间不能同时盗窃,因…...

从初识RabbitMQ到安装了解
一、同步和异步通讯 微服务间通讯有同步和异步两种方式: 同步通讯:就像打电话,需要实时响应。 异步通讯:就像发邮件,不需要马上回复。 两种方式各有优劣,打电话可以立即得到响应,但是你却不…...

MySQL(六)-字符串函数的使用解析
字符串函数的使用解析 1 计算字符串字符数的函数和字符串长的函数2 合并字符串函数 CONCAT(s1,s2,...)、CONCAT_WS(xs1,s2,...)3 替换字符串函数INSERT(s1,x,len,s2)4 字母大小写转换函数5 获取指定长度的字符串的函数LEFT(s,n)和RIGHT(s,n)6 填充字符串的函数 LPAD(s1,len,s2)…...

Zookeeper集群搭建
搭建Zookeeper集群 1.1 搭建要求 真实的集群是需要部署在不同的服务器上的,但是在我们测试时同时启动很多个虚拟机内存会吃不消,所以我们通常会搭建伪集群,也就是把所有的服务都搭建在一台虚拟机上,用端口进行区分。 我们这里要…...

【计算机视觉 | 目标检测】OVD:Open-Vocabulary Object Detection 论文工作总结(共八篇)
文章目录 一、2D open-vocabulary object detection的发展和研究现状二、基于大规模外部图像数据集2.1 OVR-CNN:Open-Vocabulary Object Detection Using Captions,CVPR 20212.2 Open Vocabulary Object Detection with Pseudo Bounding-Box Labels&…...

C++入门基础知识[博客园长期更新......]
0.博客园链接 博客的最新内容都在博客园当中,所有内容均为原创(博客园、CSDN同步更新)。 C知识点集合 1.命名空间 在往后的C编程中,将会存在大量的变量和函数,因为有大量的变量和函数,所以C的库会非常多。那么在C语言编程中&a…...

( “树” 之 BST) 501. 二叉搜索树中的众数 ——【Leetcode每日一题】
二叉查找树(BST):根节点大于等于左子树所有节点,小于等于右子树所有节点。 二叉查找树中序遍历有序。 ❓501. 二叉搜索树中的众数 难度:简单 给你一个含重复值的二叉搜索树(BST)的根节点 root…...

openharmony内核中不一样的双向链表
不一样的双向链表 链表初识别遍历双向链表参考链接 链表初识别 最近看openharmony的内核源码时看到一个有意思的双向链表,结构如下 typedef struct LOS_DL_LIST{struct LOS_DL_LIST *pstPrev; //前驱节点struct LOS_DL_LIST *pstNext; //后继节点 }LOS_DL_LIST;不…...

大文件删除不在回收站里怎么找回
在日常办公中,总会有一些新的文件产生,和用完后的文件清理掉。有时候不小心误删文件也是常有的事。但如果大文件删除不在回收站里怎么找回呢?遇到的小伙伴们请不要别急,只要按照下面的方法做就行了。 正常情况下删除会进入到回收站中&#x…...

Ubuntu22.04部署Pytorch2.0深度学习环境
文章目录 安装Anaconda创建新环境安装Pytorch2.0安装VS CodeUbuntu下实时查看GPU状态的方法小实验:Ubuntu、Windows10下GPU训练速度对比 Ubuntu安装完显卡驱动、CUDA和cudnn后,下面部署深度学习环境。 (安装Ubuntu系统、显卡驱动、CUDA和cudn…...

php的面试集结(会持续更新)
PHP 高级工程面试题汇总 php面试 1.大型的分页查询 发现当表中有很多上万条数据时,越后的数据用limit分页显示就越慢(>2秒),可能是mysql的特性所致。所以花了点时间总结实现了更优解决方案,最终实现毫秒级响应。…...

谁在成为产业经济发展的推车人?
区域发展的新蓝图中,京东云能做什么?它的角色是什么?这个问题背后,隐藏的不仅是京东云自身的能力和价值,更是其作为中国互联网云厂商的代表之一,对“技术产业”的新论证。 作者|皮爷 出品|产业家 关于云…...

上海无纺布制造商【盈兹】申请纳斯达克IPO上市,募资1100万美元
来源:猛兽财经 作者:猛兽财经 猛兽财经获悉,来自上海的无纺布制造商【盈兹】,近期已向美国证券交易委员会(SEC)提交招股书,申请在纳斯达克IPO上市,股票代码为(ETZ&#…...

Build an SAP Fiori App(一)后面更新中
1.登录 SAP BTP Trial 地址: https://account.hanatrial.ondemand.com 流程可以参考 点击 serviced marketplace 搜索studio 点击创建 点击创建,点击view subscription 点击go to application 创建完成后 添加新链接 Field Value Name ES5 - if you’…...

关于GNSS技术介绍(二)
在上期文章中,我们介绍了GNSS技术的发展历程、原理,并对不同类型的定位技术进行了介绍,在本期文章中我们将继续讨论GNSS的优点与应用及其测试方法和解决方案。 GNSS的优点与应用 目前GNSS技术已经成为日常生活不可或缺的一部分,几…...

拿到新的服务器必做的五件事(详细流程,开发必看)
目录 1. 配置免密登录 基本用法 远程登录服务器: 第一次登录时会提示: 配置文件 创建文件 然后在文件中输入: 密钥登录 创建密钥: 2.部署nginx 一、前提条件 二、安装 Nginx 3.配置python虚拟环境 1.安装虚拟环境 …...

主机防病毒攻略之勒索病毒
勒索病毒并不是某一个病毒,而是一类病毒的统称,主要以邮件、程序、木马、网页挂马的形式进行传播,利用各种加密算法对文件进行加密,被感染者一般无法解密,必须拿到解密的私钥才有可能破解。 已知最早的勒索软件出现于 …...

Win10系统重装过程(一键装机)
相信不少小伙伴都有刷机重装系统的过程,那种镜像,up盘,压缩包等多个复杂过程也折磨的大伙不堪重负,因此本期带来简易版一键装机相应操作。 下载地址: 小心点击下方链接,点击即下载(3.66GB&…...

查询优化之单表查询
建表 CREATE TABLE IF NOT EXISTS article ( id INT(10) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, author_id INT(10) UNSIGNED NOT NULL, category_id INT(10) UNSIGNED NOT NULL, views INT(10) UNSIGNED NOT NULL, comments INT(10) UNSIGNED NOT NULL, title VARBI…...