Low Code 和实践

date
Mar 22, 2022
slug
low-code
status
Published
tags
使用笔记
summary
在当今这个 追求高效 互联网时代,自动化、智能化这种能够提效的名词已经成为了当下时代的标签,好像身边所有事物都会受这条主线影响和变化,Low Code 也是受这条主线影响而必然出现的产物。
type
Post

前言

在当今这个日新月异的互联网时代,互联网企业利用 近乎为零的边际成本 和自带的 杠杆效应, 长期在市值排行榜占据绝大多数, 而企业之间的竞争自然离不开谁可以更好的 服务用户, 服务用户最核心的一点就是 快速响应客户需求, 从而形成正反馈, 为了能够做到更好的快速响应, 提效降本 可能是唯一解法, 而 Low Code 也是这个时代 必然 出现的产物。

什么是 Low Code?

Low Code 全称为 Low Code Development Platform 简称 LCDP。
Low Code 通过 可视化拖拽组件 进行程序开发的方式, 无需编码 少量代码 就可以快速生成应用程序的开发平台。

我们为什么需要 Low Code?

各个互联网公司都存在着里有各种各样的 BOSS 系统,甚至不同 BOSS 还分为不同地区,各类小改动、重复改动、相同改动的需求之多使得前端资源变得捉襟见肘。
而 Low Code 本质在于 提效
  1. 基于 物料 更快速的完成页面
  1. 在于 开放,可以使后端、运营、产品等都能加入到其中来,从而缩短 BOSS 需求的 开发周期,这样就可释放一部分前端资源去做更多提升 Low Code 平台或完成更加复杂的 BOSS 需求

发展现状

notion image
从图上的热词搜索来看,从 2018 年左右开始搜索的热度逐年上升屡破新高,各类 Low Code 平台如雨后春笋在不同领域出现,这也侧面说明了,目前这个技术和概念还没有到一个稳定期,属于群雄逐鹿的阶段,在相同领域,也有不同实现方式,使用 Low Code 的方式最佳体验,就是在合适的场景使用,才可以做到 提效, Low Code 无法做到全场景覆盖,也就是个性化、复杂化较高的页面不适合用 Low Code 实现。
 

Low Code 俩种模式

最终我们选用的是阿里开源的设计器引擎: formily

架构图

flowchart TB
  materiel[物料]
  template[模板]
  router[路由]
  snapshot[快照]
  release((发布))

  bossRouter[BOSS 路由]
  bossPage[BOSS 页面]
  rebeccaRouter[Rebecca 路由]
  rebeccaPage[Rebecca 页面]
  rebeccaUI([&#64atome/rebecca-components-ui])

  serverRebeccaAPi[服务 Rebecca 的接口]
  serverPublishAPi[服务 BOSS 的接口]
  database[(数据库)]

  subgraph LowCode[低代码平台]
    subgraph LowCodeServer[后端]
      serverRebeccaAPi <--> database
      serverPublishAPi --> database
    end
    subgraph LowCodeFrontend[前端]
      materiel -.-> template
      template --> snapshot
      template -.-> router
      router --> snapshot
      snapshot --> release
    end
  end

  subgraph UsePlatform[BOSS]
    subgraph Layout
      bossPage --> bossRouter
      rebeccaPage --> rebeccaRouter
    end
    rebeccaRouter --> rebeccaUI
  end
  rebeccaUI --> |获取最新快照|serverPublishAPi
  LowCodeFrontend --> serverRebeccaAPi
 

目前还存在的一些问题

  • 开发体验上:热更新、预览效率、智能提示、一致性
  • 项目安全上:模板的权限管理、项目隔离、分支管理
 

© jianxiaoBai 2021 - 2022