跳转到内容
aswind7
GitHub
Blog

对于低代码的一些思考

最近看了两篇文章,关于低代码原理以及网易云基于AST的低代码方案,我不禁想结合自身做一些总结。

我接触过的低代码

  • 后台管理系统-基于json格式的表单渲染器
    • 当时有个业务需求是后端定义组件类型,前端基于类型值进行渲染
  • nps 系统 (后台设计器+前台响应式展示)
    • 类似于微软表单 ,实现了单选、多选、输入框、单选量表和选项的跳转联动等功能
    • 利用react-dnd 进行拖拉拽由运营人员进行布局
  • 活动页系统(后台设计器+前台响应式展示)
    • 基于模板式的开发(非模版的方式对于运营来说操作难度比较大,并且设计要求高,运营自己拖出来的页面比较丑)
    • 后期迭代使用了react-page 低代码活动页开源框架

这些我接触的低代码基本都是基于schema来定制一套自己的DSL,然后以json格式保存到数据库,属于比较传统的低代码方式。

优点是

  • ROI比较高,无需过于复杂的系统;

缺点是

  • 不好扩展,如果遇到组件间的联动就需要一些硬编码工作
  • 有时候可能用到一些其他组件来配合,我们需要用到「出码」然后复制代码到本地开发,然后就完全脱离了低代码体系,无法再转换到低代码平台

新的方向

  • D2C
  • AI生成代码
  • 基于AST来做
    • 它无需中间层的schema(DSL)
    • 它能解决json与本地代码割裂为2套体系的问题
      • 因为他就是 code和ast, 用户操作组件后 影响的是ast, ast再生成代码;如果二次开发代码,也可以直接使用

参考文章

https://mp.weixin.qq.com/s/ZlVBv8EgV3FBg9fmuY8DDA 面试被问到低代码细节?听我这样吹(含架构和原理)

https://juejin.cn/post/7273051203562749971 网易云音乐 Tango 低代码引擎正式开源!

Tags: