Low code & No code

引言

最近几年都在讨论什么呢?
云技术、中台、敏捷、大前端、低代码。
你会发现上面的几个技术,本质上实际上并不是面向开发者的,而是面向老板,或者说面向资本的。
因为可以多快好省,所以才得到吹捧。
不论我们是否愿意,一切都会向着更快、成本更低的方向发展。打不过就加入,搞清楚背后的原理。

low code 和 no code 的概念就像公司内部 架构部门干的 脚手架之类的 + RN 的 ignite 这种代码模版 + 可视化的拖拽组件(有点梦回 dreamweaver) = 手动开发了 80%的 预设 layout 的项目前端代码。剩下 20%再写代码修修改改。
像这样,减少了前端 dev 的需求量…
前期大量重复的工作量 转移到了一些非技术,比如设计身上(开发的最终目的就是不再需要开发)

像这种 low code 适用于 埃森哲 IBM 这种, toB 卖解决方案, 如 SAAS 项目、企业信息管理系统(MIS)、内部办公系统(OA)、企业资源计划系统(ERP)、客户关系管理系统(CRM)等。或者这种”人人都是产品经理开发”的微软 PowerAppswix 还有个用户定制简单 h5 的易企秀, 还有个 list10 Best Low-Code Development Platforms In 2021
比如一个花店 餐馆 想买个订单 顾客管理的系统,基本上 layout 大差不差,在相似 80%的基础上商家应该会想要点个性化,那就是剩下的 20%了

纯代码开发就像使用 photoshop,低代码类似美图秀秀,零代码就是美颜相机。
image.png

低代码 支撑 微服务

image.png

架构流程

  • 工具-客户端基础设施上。它适合于 快速的 MVP 构建,并且生成的代码还应该方便修改。

  • 后端应该包括:

    • 大量可用地现有服务。身份验证、安全性、推送能力、地图等等
    • 快速构建出后端服务。比如内部有 Serverless 或者 FaaS 方案
    • 方便与第三方服务集成
    • 灵活性。支持多语言等

    前端作为 api 消费者,不可避免要采用装饰器模式,封装后端 API 成统一的方式:比如使用 BFF,对接契约如 swagger,查询语言如 GraphQL

  • 模型定义上 需要一个 DSL(Domain special language),比如用 json,映射 UI 对组件

  • 原型设计上 比如一个登录业务,需要考虑的点包括:1. 成功登录。2. 取消登录。3.登录失败。包括一些通用的逻辑处理如 1. 登录成功。保存 Token,并返回历史页面;2.登录失败。弹出一个自定义内容的提示框。

  • 前端架构上
    大致分为 3 块要维护:1. 模版 2. 数据的 CRUD 3. 函数;
    按组件来分,又有几个例子:

    • 无限加载 list
    • form
    • card
    • 富文本的展示
    • 常见图标,已有很多成熟的库比如echarts,二次封装成 DSL 语言,mapping 上对应的逻辑代码块
    • 跨设备的响应式布局。比如移动端使用无限加载 list,correspondingly 大尺寸桌面端使用 pagination
  • 后端架构上 微服务颗粒度尽量小,api 规范化统一格式统一权限管理,大量 api 服务,快速集成第三方。

  • 推荐的工具库列举:
    拖拽式 Web 建造工具:https://grapesjs.com/
    基于 Flow 的编程工具:https://noflojs.org/
    DSL 布局生成器:https://github.com/ijzerenhein/autolayout.js/
    可视化数据流编辑器:https://github.com/Gregwar/blocks.js
    基于 React 的内容生成器:https://github.com/vigetlabs/colonel-kurtz

https://houbb.github.io/2021/03/09/low-code-01-overview
https://www.techug.com/post/codeless-programming.html

Reference

JeecgBoot 开发文档


   转载规则


《Low code & No code》 Ryan Who 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
Symbol详解 Symbol详解
Symbol 英文意思为 符号、象征、标记、记号,在 js 中更确切的翻译应该为 独一无二的值 const s = Symbol('key用来描述这个symbol值') 这里的参数 key 其实只是 对 symbol 的描述
2021-05-31
下一篇 
localStorage indexDB sessionStorage cookie session token localStorage indexDB sessionStorage cookie session token
cookieHTTP 协议是无状态的,HTTP 协议自身不对请求和响应之间的通信状态进行保存。Cookie 指某些网站为了辨别用户身份而储存在用户本地终端上的数据(通常经过加密)。大小限制在 4KB 左右(cookie 每一个 name=v
2021-05-24
  目录