低代码
大家谈到低代码想到更多的是低代码搭建页面的平台,其实对于偏逻辑编排、服务 BaaS 能力的偏可视化方式其实也算低代码,旨在「通过少写代码,用更便捷的方式来实现原本需写代码的工作」。
对于低代码,大家的态度都比较极端的,特别喜欢或者讨厌
其实低代码产品是比较难做成的,特别是大而全的那种,由于考虑因素过多,导致步调很慢,也很难做到很易用,导致一边投入很大,一边又急切上线落地使用, 从而出现平台方觉得投入很苦,使用方觉得不太好用还需吃狗粮的矛盾,往往需经过忍耐很长时间才可「守得云开见月明」,不过很多都在没有见月明的时候就奄奄一息了。
- 反而专门领域的比如说表单、表格、图表低代码搭建活的很不错,我们飞搭正在朝着这个方向跑。
- 还有一些 BaaS 类单领域的活得也还可以,我个人更偏向「易用的可很轻快解决对应领域问题低代码产品方案」。
此外还有一个误区,有人会认为低代码是给所有工程师都可以使用的,这不太对,因为低代码最开始出现的初衷是为了解决「让不是程序员的人使用视图、组件、模板和表单等方式快速在不写代码情况下构建应用」, 低代码更适合两类场景,
- 一类是「让不是这个领域的人也可以很快的写这个领域的应用」
- 第二类是「在特定领域通过抽象协议模型通过低代码的方式来快速实现产品」。
一体化的低代码平台
Appsmith
源码:https://github.com/appsmithorg/appsmith
Appsmith 是一个用于构建内部应用的低代码开源框架,一个印度的创业公司弄的,很适合做企业后台管理系统,常用的 CRUD、Dashboards、数据报表啥的不在话下,Appsmith 有一种 Retool "开源版"的感觉。 此外还提供了大量的模板可供使用,包括 Project、Management Support、Human Resources、Sales、Marketing、Finance 等方向,有些思路对于不少低代码方向有一定参照作用。
Budibase
源码:https://github.com/Budibase/budibase
Budibase官方宣称是一个你会喜欢使用的低代码平台,通过简单易用的方式来提高构建一个应用的速度。 和 Appsmith 相比,是另外一种实现方式,此外 Budibase 有内置数据库、外部数据源、设计图形用户界面和自动化部分,在创建 UI 界面的使用使用的是偏设计的方式,整体而言会更加美观一点。
ToolJet
源码:https://github.com/ToolJet/ToolJet
ToolJet 也是一个不错的低代码框架,同样支持接入多种数据源,偏拖拽的方式实现前端的界面,包括对于 mobile 端的一些支持,此外使用的是 JS 比较友好
BaaS领域的低代码
BaaS (Backend as a Service)对于想快速实现一个产品而言,使用 BaaS,开发人员可以专注于前端开发,而无需花费大量时间和精力来构建和维护后端基础设施, 这使得开发人员能够快速构建应用程序,更快地将其推向市场。不过这一块当前在国内其实弄得没有国外那么好用和精致,国外有几个还不错的。
Supabase
源码:https://github.com/supabase/supabase
Supabase是一个开源工具的组合,使用企业级的开源产品构建 Firebase 的功能。Firebase 是谷歌旗下的一家 BaaS 云服务公司,可以让开发者通过 Firebase 的框架就可以简单地开发一个 App,无需服务器以及基础设施。
Appwrite
源码:https://github.com/appwrite/appwrite
是一个很有名的完整后端服务能力,通过视觉化界面极简了从零编写 API 的繁琐过程,在保证软件安全的前提下为开发者创造了一个高效的开发环境。 基于 Docker 的端到端开发者平台,其容器化的微服务库可应用于网页端,移动端,以及后端。
钉钉宜搭
是钉钉内部开发的低代码应用搭建平台,用户可以通过可视化开发单据页面、流程页面、报表页面、展示页面、外部链接页面,将这些页面组合在一起形成轻应用,一键发布到PC和手机端。
官网地址:https://www.aliwork.com
腾讯云微搭
是腾讯云内部孵化的一款高性能拖拽式的低代码平台,向上能连接前端业务,向下能连接云计算的能力。微搭主要以云开发技术作为底层支撑,提供高度开放的开发环境, 将繁琐的底层架构和基础设施抽象化为图形界面,通过行业化模板、拖放式组件和可视化配置快速构建多端应用(小程序、H5 应用、Web 应用等),免去了代码编写工作,让用户能够完全专注于业务场景。
官网地址:https://weda.cloud.tencent.com/
Headless CMS
这一类偏后端解决方案进一步发展,变得更加简单、美观、好用了,简单而言就是只提供数据的内容管理系统,不关注 UI,内容优先。
Strapi
源码:https://github.com/strapi/strapi
是开源的无头 CMS,使用 JavaScript,很灵活完全可定制,支持不少插件,可以很快的生成一条 REST API 服务,整体使用起来对于前端同学来言还是比较熟悉的,可以一试。
Cube
源码:https://github.com/cube-js/cube.js
是一个用于构建数据应用程序的 Headless 商业智能框架,使用任何来源的数据,将其组织成一致的指标,并将其用于每个数据应用程序。
流程编排
看起来不少公司都有自己的服务编排的平台,对于大一点的厂,可能每一个 BU 都有一个,不过整体而言都很难做到好用,同时很难讲明白「服务编排比写代码要快要方便」这个点, 大多数前期很热闹,中期很平稳,后期很难玩下去,任重而道远,不过很期待正在做的同学能够到达「守得云开见月明」,把这一块能力探得更深一点。
Automat
是一个浏览器自动化工作流的浏览器扩展,使用连接块的方式来很方便的编排你的常用操作,有自动填充表单、截图、取数据、定时触发、操作浏览器、Web 交互等能力,可以将你重复的操作很好的交给这个工具,好比快捷指令。 他做得比较好的点是很易于使用,同时提供了不少开箱即用的能力,让人很快速就完成自己的需求。
n8n
源码:https://github.com/n8n-io/n8n
是一个可扩展的工作流自动化工具,看了看对于做流程性的节点编排,逻辑控制还是很不错的,此外支持基于代码自部署。
垂直领域的低代码
AppFlowy
源码:https://github.com/AppFlowy-IO/AppFlowy
不少人常用的 Notion 笔记本身也是一个低代码工具,与之对应的开源实现叫 AppFlowy
YAO
源码:https://github.com/YaoApp/yao
是一款开源应用引擎,使用 Golang 编写,以一个命令行工具的形式存在, 下载即用。适合用于开发业务系统、网站/APP API 接口、管理后台、自建低代码平台等。 YAO 采用 flow-based 的编程模式,通过编写 YAO DSL (JSON 格式逻辑描述) 或使用 JavaScript 编写处理器,实现各种功能。
Airtable
源码:https://www.airtable.com/ Airtable 是一个电子表格-数据库混合体,它具有数据库的功能,但实际上是电子表格,还可以把 文字、图片、链接、文档等各种资料整合在一起。
NocoDB
源码:https://github.com/nocodb/nocodb NocoDB 的作用就是将 MySQL、PostgreSQL、SQL Server、SQLite 或 MariaDB 转换为智能电子表格,使用场景可以参考下面 gif,还是挺有想象空间的。
ApiTable
源码:https://github.com/apitable/apitable 与Airtable相似的表格低代码。
前端设计器
- LowCodeEngine。阿里开源的一套面向扩展设计的企业级低代码技术体系。https://lowcode-engine.cn
- amis。前端低代码框架,通过 JSON 配置就能生成各种后台页面,极大减少开发成本。https://github.com/baidu/amis
- NocoBase。是一个极易扩展的开源无代码开发平台。正处在早期开发阶段,可能变动频繁,请谨慎用于生产环境。https://cn.nocobase.com/
- 本文作者:zhangxue
- 本文链接:https://lucksnow1989.github.io/article/9.开源/低代码.html
- 版权声明:本文为本人原创文章,遵循 CC 4.0 BY-NC-SA版权协议,转载请附上原文出处链接和本声明。