2014年起,国外著名研究机构Forrester正式提出“低码”
」概念以来,便开始受到技术圈的广泛关注。其实,早在上世纪的八十年代,美国那边便有相关企业和机构在试水研究可视化编程,探索这一特性在未来市场的发展潜力。2010 年,美国麻省理工媒体实验室(MIT Media Lab)对外发布了一款简易版图形化编程工具:擦
。让用户可通过拼接积木,来快速完成编程开发工作。在编程教育越来越被重视的时代,这一工具也被多家教育机构逐步应用到了儿童编程教材中。由此可见,低代码编程,在现阶段互联网业务疯狂增长的带动之下,也有了新的使命和义务,即帮助开发者在前期快速构建一个可以以较低成本投入市场的应用。
。作为国内外程序员大佬云集的技术社区 - GitHub ,在低代码需求的爆发之下,也出现众多高质量的低代码工具。下面便跟大家盘点一下,我在 GitHub 上看到的几款比较优秀、靠谱的低代码工具。ToolJet是GitHub上的开源低代码开发框架。ToolJet提供了丰富的可视化工具箱,只需几个步骤就可以快速构建企业级部署工具。下图完整展示了ToolJet的工作流程。在图的左侧,显示了它所连接的外部数据源,包括数据库存储、云平台、第三方接口服务等。右边主要是映射具体的功能,比如项目申请、数据面板、表单等。当然,低代码工具最重要的是外部数据源的支持。通过框架的API,可以快速连接PostgreSQL、MongoDB、Elasticsearch等外部数据源,以及Stripe、Slack、Airtable等常见的第三方服务。在项目开发层面,为了尽可能降低附属功能的耦合度,作者还内置了插件功能。通过这个框架的插件功能,我们可以构建基于Javascript的连接器,用React开发项目组件,通过命令行管理插件,非常方便。Yao作为一个开源的低代码开发引擎,用开发者的原话来说,姚的主要功能就是让你不用写一行代码就能快速创建Web服务和管理后台,极大的解放了生产力。该工具内置了一套数据管理系统。通过编写JSON,帮助开发者完成数据库模型、API接口编写、管理后台接口搭建等。,并实现了90%的通用界面交互功能。适合快速制作各种管理后台、CRM、ERP等内部系统。技术上,姚是用Go语言写的,可以支持多种方式扩展数据流处理器。没错。它具有极好的通用性。在大多数场景下,其应用性能和资源比例都优于PHP、Java等语言。可重用性和编码效率,最后的结果相当亮眼。此外,项目中内置的管理系统与Yao没有耦合,开发者也可以使用Vue、React等任何前端技术实现管理接口。
mometa这个项目的作者是百度的一名工程师。从设计理念上来说,这个项目的目标不是传统的主流低代码平台,而是面向RD和代码的可视化设计编辑平台。对于程序员来说,它更像是Dreamweaver和GUI可视化编辑工具。项目中有许多功能。下面举几个简单的例子给大家看看。视图的拖拽移动:可视化素材插入:基于视图,定位代码:一般来说,这个项目的主要功能有:
对低代码平台不形成依赖,二次开发可以无缝进入代码开发模式;支持所见即所得的可视编辑,用于优化开发体验;可自定义物料,提升功能复用率。此外,作者还提供了多语言支持,开放素材生态,开发者可以在团队内部自定义素材库。素材库支持热更新,不会破坏现有的开发模式。
sparrow国内开发者开源的场景和低代码平台Sparrow,可以实时输出源代码。其核心目标是帮助开发者“提高RD效率”。所以它的功能不仅仅是UI的可视化构建,还有功能层构建、业务逻辑代码组装、二次开发的源代码生成等功能。此外,它还具有以下特性:
低代码开发
:快速生成可读性强、Vue element-ui 组件库的源代码。视觉发展
:通过 GUI 生成页面代码源文件。资产市场
:代码资源共享,包含组件、编辑区块、静态区块、搜索业务组件、插件、场景搭建编辑器。Budibase本项目基本满足开箱即用、简洁美观的UI设计和强大的功能要求。它可以帮助你更快地开发商业应用,目标是帮助你在几分钟内快速构建一个内部应用。
,支持单页面项目,具备自动化工作流程、响应式设计、外部数据源对接等特点。在数据源的对接上,支持 PostgreSQL、MySQL、MongoDB、Rest API、Docker、K8s 等主流数据库与开发工具。也就是说,你可以将 Budibase 连接到外部数据库、或从 RestAPI 提取数据、导入 CSV 等多种方式,快速使用 Budibase 的内置数据库。更为人性化的一点,是它还可以使用 Webhook 来集成其它平台的工具,简单配置一下,即可扩展更多丰富功能。同时,它也支持通过用户群组权限划分,帮你打造一款更为完善的应用程序。Appsmith作为GitHub中最受欢迎的低代码构建平台,拥有最多的Star。appsmith可以连接各种数据源,帮助你快速搭建管理后台、开发工具、企业CRM系统等各种项目。项目内置了35个预建的可视化UI组件,同时具备多人协作、私有服务器部署等功能,让你更灵活地完成应用开发。它的工作原理也很简单,主要分为三步:连接数据库或 API;将数据对接到 UI 组件或自定义的 JS 上;立即发布与分享应用。有些同学可能会担心数据库的对接,要写很多代码才能完成适配。在这一点上,你的担心完全没有必要!对接所有主流数据库或其他数据格式基本都可以在界面上轻松配置,也可以通过复制粘贴直接请求API接口,快速实现数据源的对接!总而言之,这个项目超级牛逼!方便,开发成本低,用户体验好,是它能在几个低代码开源平台中脱颖而出,取得破万星成绩的主要原因。相信在不久的将来,国内对低码的需求会继续增加。
写在最后低码用起来也是一把双刃剑。使用得当,可以简化项目的开发流程,完成产品的快速迭代升级和测试。如果使用不当,可能会使项目代码臃肿,难以维护,甚至导致数据泄露。因此,对于具体用法,我想给出以下建议:
使用时,最好先完整阅读项目的官方文档;尽可能先在一些小项目或初级项目进行尝试;保证数据的可控性与安全性,平台最好选可自托管服务器的;时刻做好数据备份,必要时可随时导出数据,切换平台。做到以上四点,其实还是需要一点编程基础的,这也是我们称这些项目为低代码而不是无代码的主要原因。本文提到的都是开源的。有兴趣的同学可以去GitHub自行了解一下。如果他们不会用GitHub或者懒得搜索,可以私信[515]接收我编译的代码和笔记。就这样,我们一会儿见[见]