浅聊配置化-要不要实现动态表单

1、配置化的原则

配置化是一种抽象,把事物分成2类:不变的,可变的。

如果事物都是可变的,是无法实现配置化的。

配置化的根本在于找到不变的事物,基于不变的事物进行可变事物的配置。

所以,认为一切皆可配的想法是有问题的,配置化是有边界的。

如果非要说一切皆可配置,理论上也不是不行,把编程语言作为配置即可。在不限定成本的情况下,编程语言可以实现所有功能。


如上图所示,配置化有3个核心要素:灵活性、成本、易用性。我们的目标是非常灵活、非常易用、成本还低。

但是实际上随着灵活性的增加,使用的成本、开发的成本会急剧增长;易用性会逐渐降低。

配置化的核心是在三者间找到一个平衡点。

2、动态表单

2.1 动态表单定义

大部分人,看到动态表单,肯定会认为:所有页面皆可配置,包括页面布局、页面元素、校验等等;只要做了配置化,以后页面变化就没有工作量。

实际上并不是,工作量并不会凭空消失,只是转化了形态而已。

而配置化,只是把需要人工投入的工作量,转化成机器自动投入的工作量而已。

动态表单,按照动态配置的范围不同,可以分成不同的等级。

等级描述
1显示的文字、元素排序、元素类型配置
2校验配置
3动态增减元素
4元素关联
5复合元素

2.2 动态表单等级选择

选择达到哪个等级,由业务需求决定。比如业务需求比较稳定,页面元素基本不变,只有校验规则、文字描述会发生改变,实现等级2就够了。如果经常增删元素,则需要实现等级3。

不能以技术的角度去做选择,直接实现完全动态化。这个成本非常高,而且没几个团队能做到。

与其这样,还不如使用开源的低代码平台,研发人员通过简单的配置实现页面,比如百度的AMIS(我其实没用过)。滴滴金融前端使用的低代码平台,通过json配置就能实现增删改查功能,且与公司的用户权限系统结合,大大提升了前端开发的效率和质量。

总结:不考虑成本进行架构设计, 就是耍流氓。好的设计,是要在业务能承受的成本范围内,很好的支撑业务。所以不要光看别家公司配置化做到什么程度,动态表单做到什么程度,还是对比业务特性、团队能力等因素。

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

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

相关文章

[LLM]大模型训练(二)--DeepSpeed使用

安装DeepSpeed与集成 DeepSpeed可以通过pip安装,无需指定PyTorch和CUDA的版本。DeepSpeed内包含需要自定义的CUDA算子,将通过即时编译的方式在运行时构建。 pip install deepspeed DeepSpeed与HuggingFace Transformers直接集成。使用者可以通过在模型…

从入门到精通,30天带你学会C++【第十一天:二分查找】

目录 Everyday English 前言 二分查找 例题 50分做法 分析利弊 示例代码 示例截图 100分做法 二分查找是什么? 这题该怎么用二分查找? 示例代码 示例截图 结尾 Everyday English Look before you leap. 三思而后行 前言 今天是2024年的…

爬取糖豆视频

爬虫案例积累,以爬取糖豆视频为例: 爬取视频类型的数据一般步骤: 1.点击media,刷新,播放一个视频,会刷新一个包,点击发现是播放视频的包, 2.复制这个包url中的关键字,在搜索框中进…

在宝塔Linux中安装Docker

前言 帮助使用宝塔的用户快速上手docke的安装 📚📚 🏅我是默,一个在CSDN分享笔记的博主。📚📚 ​​​​ 🌟在这里,我要推荐给大家我的专栏《Docker》。🎯&#x1f3af…

[新版Hi3531DV200 性能强悍]

新版Hi3531DV200 性能强悍 Hi3531DV200是针对多路高清/超高清(1080p/4M/5M/4K)DVR产品应用开发的新一代专业SoC芯片。Hi3531DV200集成了ARM A53四核处理器和性能强大的神经网络推理引擎,支持多种智能算法应用。同时,Hi3531DV200还…

Spring Boot Admin健康检查引起的Spring Boot服务假死

问题现象 最近在spring boot项目中引入了 spring-boot-starter-actuator 后,测试环境开始出现服务假死的现象, 且这个问题十分怪异,只在多个微服务中的简称A的这个服务中出现,其他服务都没有出现这个问题, 之所以说…

按照故障码类型分类的API接口

随着汽车的普及,车辆故障也成为了一个不可忽视的问题。对于车主来说,及时了解故障码的含义以及解决方案十分重要。挖数据平台为解决这一问题,提供了一套按照故障码类型分类的API接口,用于查询车辆故障、故障码适用品牌以及提供相应…

STL——queue容器

1.queue基本概念 概念:queue是一种先进先出(First In First Out,FIFO)的数据结构,它有两个出口。 队列容器允许从一端新增元素,从另一端移除元素。 队列中只有队头和队尾才可以被外界使用,因此队列不允许…

Java API 操作Docker浅谈

背景: 使用com.github.docker-java库可以很方便地在Java中操作Docker。下面是一个详细的教程,包括创建镜像、创建容器、启动容器、停止容器和删除容器的步骤以及每一步的说明。 前提: 首先,在你的Java项目中添加com.github.doc…

Linux之组管理和权限管理

组的概念 如图所示:test.txt是由tom创建的,所以tom是文件的所有者,tom归属于组A,组A就是文件的所在组;组B就是文件的其他组。 所有者 谁创建了文件,谁就是文件的所有者。 查看文件的所有者 指令&…

Django 学习教程- Hello world入门案例

系列 Django 学习教程-介绍与安装-CSDN博客 欢迎来到第Djagno学习教程第二章Hello World 入门案例。 在本教程中,我将引导您完成django的Hello World入门案例。 让我们开始吧! 版本 Django 5.0Python 3.10 创建项目 安装 Django 之后&#xff0…

信创之国产浪潮电脑+统信UOS Linux操作系统体验10:visual studio code中调试C++程序

☞ ░ 前往老猿Python博客 ░ https://blog.csdn.net/LaoYuanPython 一、引言 老猿在CSDN的《信创之国产浪潮电脑统信UOS操作系统体验2:安装visual studio code和cmake搭建C开发环镜》介绍了在国产浪潮电脑统信UOS操作系统中安装visual studio code和cmake搭建C开…

css动态传参,attr的妙用

今天再做一个编辑器的功能的时候,发现有一段非常奇妙的代码,使用attr获取div标签的data-label值。 css的attr?What fuck?这又是什么鬼东西,emmm。 查询后官方是这么回答的: CSS 表达式 attr() 用来获取选择到的元素的某一 HTM…

GO语言基础笔记(八):高级特性与性能优化

目录 反射(Reflection) 反射概念 反射的关键概念 反射的常见用途 代码示例 1. 检查类型和值 2. 修改变量值 3. 调用函数 4. 结构体反射 并发模式(Concurrency Patterns) 1. Worker Pool 模式 工作原理 在代码中的体现…

Unity坦克大战开发全流程——结束场景——通关界面

结束场景——通关界面 就照着这样来拼 写代码 hideme不要忘了 修改上一节课中的代码

动态内存管理篇

为什么要动态内存分配? 之前,我们向内存申请空间,有两种方式,一种是定义变量,一种是建立数组;但是,这两种方式都有缺陷,创建的空间大小是固定的,在程序的运行过程中&…

买对好车省钱又防坑,高性价比的买车攻略

一、教程描述 正所谓隔行如隔山,买车这件事情并不简单,买车的内幕还是有不少的,本套教程讲述买车攻略,非常适合准备买车的朋友,可以帮助大家买车少入坑,高性价比买到自己心仪的车。本套买车教程&#xff0…

2023-12-23 LeetCode每日一题(移除石子使总数最小)

2023-12-23每日一题 一、题目编号 1962. 移除石子使总数最小二、题目链接 点击跳转到题目位置 三、题目描述 给你一个整数数组 piles ,数组 下标从 0 开始 ,其中 piles[i] 表示第 i 堆石子中的石子数量。另给你一个整数 k ,请你执行下述…

【随口一说】最近的CSDN

这段时间随便发的一篇博文很快就有“点赞”、“收藏”、“关注”的信息, 而且简单看了一眼用户,很多都是空的或者一堆转载, 机器人也太明显了点,很让人不舒服, 不花点心思设计文章评优推送算法反倒用机器人刷热门&…

电机(一):直流有刷电机和舵机

声明:以下图片来自于正点原子,仅做学习笔记使用 电机专题: 直流电机:直流有刷BDC(内含电刷),直流无刷BLDC(大疆的M3508和M2006),无刷电机有以下三种形式:&a…