建设低代码平台从 1 到 n 的个人思考

前言

本文旨在探讨低代码平台在初步落地后,如何进一步建设的个人见解,而非涉及平台的建设过程。

假设我们已有基于 DSL(领域特定语言) 的低代码平台,该平台包含但不仅限于以下功能模块,如物料市场,视图编辑器,事件逻辑编辑器,基于 DSL 的渲染器,自动化发布部署等。

从 1 到 n 会遇到哪些问题

众所周知,从 0 到 1 去建设平台,主要关注于基础功能的实现和特定场景的满足,然而从 1 到 n 的过程中,我们需要更加关注平台的稳定性,易用性和其他相关指标。

那对于低代码平台,从 1 到 n,会有哪些问题呢?

  1. 用户上手成本:如何降低新用户的学习成本,使平台更易上手。
  2. 功能完善度:编辑器和物料市场的功能是否足够丰富,能否满足用户的多样化需求。
  3. 搭建页面的维护性:如何确保用户通过平台搭建的页面易于维护和更新。
  4. 用户搭建体验优化:搭建过程中的用户体验是否流畅,是否存在可以改进的地方。
  5. 渲染问题排查:当渲染出现问题时,如何高效地进行问题定位和解决。

问题远不止这些,但以上所述乃笔者亲身体验。

接下来,我们将逐一分析这些问题,并提出可能的解决方案(以下仅为个人观点)。

用户上手成本

通常用户在经过一定时间的学习后,能够搭建常规的页面,如表单表格的查询页面。当搭建复杂的页面时,需要搭建更多的配置以及相关配置联动,往往用户会去寻找平台的同学进行询问,"这个需求是否在平台能支持配置","为什么配置了这个功能点但不生效"等等类似的问题。对于"不会配置","配置了不生效"等问题。

常规方式是提供值班答疑服务,详尽的功能文档,组织培训等等。

注:在具体的实践中,也没什么有效的方式去解决上手成本,但用户长时间的使用低代码平台会减少此类问题的发生

物料完善度

核心在于业务需求是变化的,物料能提供的功能是有限的。在有限的情况下去满足无限的场景,显然是不可能的。对于这点,要么确定平台的适用场景,提供适用场景所需的功能;要么平台提供扩展能力,如用户发布自定义物料到物料市场等。

但实际上平台的物料功能应满足大多数常规的业务场景,物料提供对应组件自身 props 的配置。但这会遇到一类问题,组件的 props 接收组件、函数做视图的渲染,即"如何在平台上搭建组件内部渲染另个组件,方法渲染组件呢"(如表格列的自定义渲染)。会涉及到平台的建设思路,是支持写代码,或是提供强大的配置能力,还是两者皆有。

搭建页面的维护性

基于 DSL 的低码搭建有个严重的问题,搭建的内容太分散了,后期不好维护。

在具体的实践中,对于一个复杂的页面,无法直接确定"哪个元素的哪个方法上有哪些逻辑","哪些接口被哪个事件调用了","哪些按钮的点击事件影响到另外的元素的状态变化"等等。

目前的有效方式是对 DSL 进行拆解,产出一份数字化文档,并基于 DSL 生成代码供用户查看。提供全文搜索的功能,帮助用户快速定位并修改页面元素和逻辑。

用户搭建体验优化

在搭建复杂的页面,涉及到上百个元素搭建,几十个元素的事件逻辑编排,会非常影响用户的搭建体验以及搭建效率。

但这是一件长期的任务,需要平台在完成初步的建设后,通过收集和分析用户行为数据,不断优化平台的操作流程和交互设计,提升用户体验。

渲染问题排查

很多时候,用户(包含前端同学和非前端同学)会拿着一个简单的问题找到平台同学进行提问,可能这个问题是配置错了,逻辑代码写的错了,变量没定义之类的。那应该怎么解决呢。

平台应提供详细的错误提示和日志记录功能,帮助用户快速定位问题所在。以及全局数据流状态可视化工具,让用户能够直观地了解页面数据的流动情况,便于问题的排查和解决,此外其他有效的方式或工具。

总结

从 0 到 1 去建设低代码平台是相对轻松的,更重要的是从 1 到 n 的建设。虽然其中会遇到很多问题,但相信问题总是能解决的。

相关推荐
卓怡学长6 分钟前
m115乐购游戏商城系统
java·前端·数据库·spring boot·spring·游戏
老陈聊架构35 分钟前
『AI辅助Skill』掌握三大AI设计Skill:前端独立完成产品设计全流程
前端·人工智能·claude·skill
Ulyanov1 小时前
从桌面到云端:构建Web三维战场指挥系统
开发语言·前端·python·tkinter·pyvista·gui开发
cypking1 小时前
二、前端Java后端对比指南
java·开发语言·前端
糠帅傅蓝烧牛肉面1 小时前
单实例多MCP聚合服务:两种实现方案深度对比
前端·docker·ai
JosieBook2 小时前
【Vue】12 Vue技术—— Vue 事件修饰符详解:掌握事件处理的高级技巧
前端·javascript·vue.js
艾斯特_2 小时前
Echarts常用配置项及解释
前端·javascript·echarts
m0_502724953 小时前
飞书真机调试
开发语言·前端·javascript
我只会写Bug啊3 小时前
复制可用!纯前端基于 Geolocation API 实现经纬度获取与地图可视化
前端·高德地图·地图·百度地图·经纬度
刘一说4 小时前
Vue3 模块语法革命:移除过滤器(Filters)的深度解析与迁移指南
前端·vue.js·js