低代码平台的使用学习

news2024/11/26 11:06:48

背景

最近发现老婆每天都要捣鼓一个 excel 表格,并将表格发到群中,询问后才知道只是为了记录每天的事物变化。我想这接收方每次都要下载表格再打开看,太麻烦了,直接做个 web 表单,支持简单的增删改查就好了。

当我着手去做这件事的时候,才发现这么简单的一个功能,还需要去搭建后台服务,构建前端表格。虽然都是很简单的活,但感觉做起来毫无意义浪费时间,为了支持这种简单的需求。兜兜转转发现 低代码平台 好像挺适合的,顾找了几个试试,还是挺不错的。

什么是低代码平台

低代码平台是一种开发工具或环境,它们旨在简化应用程序的开发过程,减少编码量,提高开发效率,同时降低对传统编程知识的依赖。通过低代码平台,开发人员可以使用图形化界面和拖拽功能,而不需要手写大量代码,从而更快地构建应用程序。

低代码平台的优缺点

优点

  1. 快速开发:低代码平台允许开发人员使用可视化组件来构建应用程序,而不需要从头开始编写代码。这可以大大缩短开发周期,使得应用程序可以更快地交付。

  2. 降低技术门槛:低代码平台减少了对传统编程技能的需求,使得更多非专业开发人员也能参与应用程序的开发。这有助于减轻技术团队的负担,使业务人员也能更容易地参与到应用程序开发中。

  3. 可视化开发:低代码平台通常提供直观的可视化界面,允许用户通过拖拽和配置组件的方式来构建应用程序,而不需要手写代码。这对于那些不熟悉编程的人来说是一种很大的优势。

  4. 灵活性:尽管是低代码平台,但它们通常仍然提供一定程度的灵活性和自定义选项,以满足不同应用程序的需求。

  5. 适用于快速原型和中小规模项目:低代码平台在快速原型开发和中小规模项目中表现出色,因为这些项目通常不需要复杂的定制开发。

  6. 支持跨平台开发:有些低代码平台支持跨平台开发,使得开发人员可以一次构建应用程序,并在多个设备或操作系统上运行。

缺点

  1. 复杂度有限:对于非常复杂的项目和高度定制化的需求,低代码平台可能无法满足所有要求。在这种情况下,传统的编程方法可能更为适用。

  2. 性能问题:一些低代码平台可能会对应用程序的性能产生一定程度的影响,特别是对于需要高度优化和资源管理的应用程序。

  3. 可维护性:虽然低代码平台加速了开发过程,但有时可能会牺牲代码的结构和可维护性。在长期维护的角度考虑,这可能需要更多的注意。

有哪些开源的低代码平台

由于时间精力有限,只找了几个 star 数量比较高的试了下。

以下数据来源时间:2023/8/4。

appsmith

GitHub地址(star:28.5k)

您可以构建任何东西,从简单的CRUD应用程序、管理面板、仪表板到自定义业务应用程序和复杂的多步骤工作流。支持多种数据源以及 api 调用。

我目前就是用的这个来构建表格的,挺好用的。
在这里插入图片描述

buildbase

GitHub地址(star:18.9k)

用于在几分钟内创建内部工具、工作流和管理面板的低代码平台。支持PostgreSQL、MySQL、MSSQL、MongoDB、Rest API、Docker、K8s等。

这个界面我挺喜欢的。
在这里插入图片描述

amis

GitHub地址(star:14.5k)

前端低代码框架,通过 JSON 配置就能生成各种后台页面,极大减少开发成本,甚至可以不需要了解前端。

百度的东西,对国人会友好点。
在这里插入图片描述

lowcode-engine

GitHub地址(star:12k)

一套面向扩展设计的企业级低代码技术体系。

阿里的,比较适合企业场景。
在这里插入图片描述

yao

GitHub地址(star:6.3k)

YAO 是一款开源应用引擎,使用 Golang 编写,以一个命令行工具的形式存在, 下载即用。适合用于开发业务系统、网站/APP API 接口、管理后台、自建低代码平台等。
在这里插入图片描述

低代码平台的一些感想

实际体验了几款,如果说只是像我开头说的,建个表格做增删改查,感觉现在的低代码平台都挺成熟的(各种响应式布局,自定义设计等等),拖拖拽拽就能生成网页,找自己喜欢的用就行了。

其实对于程序员来说,如果是单纯的做 web,目前的前后端框架都是很成熟的(例如我所熟悉的 vue element go gin),做个应用出来也挺快的。

想要直接通过低代码平台来完成也不是不行,但是低代码平台想要做复杂的应用,前期也是需要花时间去了解其使用的,也有一定的入门门槛。最主要的是不知道有没有坑 =-=,如果有坑了,官方不修复,就得自己去看源码,不如自己撸一套合适了。

低代码平台相对来说还是可以借鉴参考其实现方式的。例如在工作中,已经确定了开发框架,并构建了开发规范,开发新项目或者新功能时,其实框架结构代码就可以自动生成,自己写个小工具生成代码可以节省不少工作时间(gozero 等),最终都是为了效率提升。

总结

总的来说,低代码平台在适合的场景下可以显著提高开发效率和降低开发成本,对于快速原型、中小规模项目以及业务人员参与开发的情况非常有用。但对于复杂的、高性能要求以及高度定制化的项目,传统的编程方法可能更为适用。

参考

  • Github-low-code-platform
  • 推荐20个开源的前端低代码项目

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/835531.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Talk | ICCV‘23 华南理工大学林炜丰:视觉基础模型-尺度卷积调制遇上Transformer

本期为TechBeat人工智能社区第519期线上Talk! 北京时间8月3日(周四)20:00,华南理工大学—林炜丰的Talk已准时在TechBeat人工智能社区开播! 他与大家分享的主题是: “视觉基础模型-尺度卷积调制遇上Transformer”,他介绍了一种新的…

Godot 4 源码分析 - 碰撞

碰撞功能应该是一个核心功能,它能自动产生相应的数据,比如目标对象进入、离开本对象的检测区域。 基于属性设置,能碰撞的都具备这样的属性:Layer、Mask. 在Godot 4中,Collision属性中的Layer和Mask属性是用于定义碰撞…

在线文档协作工具有哪些推荐?

在现代工作和学习中,团队协作的重要性日益凸显。随着云计算和互联网技术的快速发展,越来越多的在线协作工具涌现出来,为我们提供了高效、便捷的协作方式。我根据日常工作经验,向大家推荐3款主流、且备受欢迎的在线协作工具&#x…

AI绘图实战(十二):让AI设计LOGO/图标/标识 | Stable Diffusion成为设计师生产力工具

S:AI能取代设计师么? I :至少在设计行业,目前AI扮演的主要角色还是超级工具,要顶替?除非甲方对设计效果无所畏惧~~ 预先学习: 安装及其问题解决参考:《Windows安装Stable Diffusion …

用C语言构建一个数字识别卷积神经网络

卷积神经网络的原理和对应的python例子参见: https://victorzhou.com/blog/intro-to-cnns-part-1/ 和...-2/ 这里仅叙述卷积神经网络的配置, 其余部分不做赘述,具体请参见上一篇: 用C语言构建一个手写数字识别神经网路 卷积网络同样采用简单的三层结构&#xff0c…

为何优秀的项目经理都在用鱼骨图?

什么是鱼骨图 鱼骨图,又被称为因果图或是石川图,是一种强大的视觉工具,用于识别,探索和显示在复杂过程中可能或已经出现的问题的所有可能原因。这个名字来源于这个图的形状,看起来像一条鱼的骨骼。 这种图表的起源可…

了解 CVSS:通用漏洞评分系统的应用

漏洞威胁管理至关重要,因为网络犯罪是一种持续存在的全球风险。网络犯罪分子愿意利用软件中的任何漏洞来访问网络和设备。对使用该软件的软件开发人员和组织的影响可能很严重。用户必须处理攻击的结果,例如赎金或数据盗窃,并且还可能面临法律…

笔记:Android 9系统启动流程

启动流程 1.按下电源,系统启动 当电源键按下时,引导芯片代码(汇编指令)会从预定的地方(固化在ROM)开始执行,将引导程序 BootLoader 加载到 RAM中,然后执行 2.引导程序 BootLoader …

箭头函数和普通函数的区别

1. 写法不同 const arrayFn (a, b) > a b; function add(a, b) > {return a b; }2. 内部this的指向不同 window.a 1;// 箭头函数中的this在定义时就已经固定,不会因为调用对象的不同而改变 const loga () > {const a 2;return this.a; }// this在该…

【C语言学习】逃逸字符(转义字符)

逃逸字符(转义字符) 1.\" 双引号 \" printf("请分别输入身高的英尺和英寸,""如输入\"5 7\"表示5英尺7英寸:");这里的"\就是双引号的作用,因为在双引号里面直接用双引号无意义&…

C++问题记录:VS中使用cout输出vsnprintf()产生的字符串有乱码

1. 问题介绍 使用Visual Studio开发一个C项目的时候,使用vsnprintf()生成格式化字符串,在使用std::cout输出该字符串的时候产生乱码,但是使用printf()输出的结果是正常的,下面是相关代码和结果,如有指教,欢…

量子力学的挑战和未来:未解决的问题和可能的发展方向

亲爱的读者, 欢迎回到我们的量子力学系列文章。在前面的几篇文章中,我们已经深入探讨了量子力学的起源、基本概念、实验验证以及应用领域,包括量子计算、量子通信和量子感应。今天,我们将探讨量子力学所面临的挑战以及未来可能的…

【雕爷学编程】 MicroPython动手做(34)——通用传感器的综合运用2

知识点:什么是掌控板? 掌控板是一块普及STEAM创客教育、人工智能教育、机器人编程教育的开源智能硬件。它集成ESP-32高性能双核芯片,支持WiFi和蓝牙双模通信,可作为物联网节点,实现物联网应用。同时掌控板上集成了OLED…

@ControllerAdvice注解使用及原理探究 | 京东物流技术团队

最近在新项目的开发过程中,遇到了个问题,需要将一些异常的业务流程返回给前端,需要提供给前端不同的响应码,前端再在次基础上做提示语言的国际化适配。这些异常流程涉及业务层和控制层的各个地方,如果每个地方都写一些…

【云原生】Docker中容器管理常用所有命令

1.docker 容器创建流程 2.容器运行本质 docker run [OPTIONS] IMAGE [COMMAND] [ARG...] 创建容器基本选项:--name:为容器命名 -i:交互式创建容器 -d:后台创建容器 -t:为容器分配伪终端 Docker 容器存在的意义就是为…

Demystifying Prompts in Language Models via Perplexity Estimation

Demystifying Prompts in Language Models via Perplexity Estimation 原文链接 Gonen H, Iyer S, Blevins T, et al. Demystifying prompts in language models via perplexity estimation[J]. arXiv preprint arXiv:2212.04037, 2022. 简单来说就是作者通过在不同LLM和不同…

如何提升自信更好地面对挑战

简而言之:扬长避短,做自己。 动态 - CSDN AI话痨: 提升自信是面对挑战的关键之一。以下是一些方法可以帮助你提升自信,更好地面对挑战: 自我认知:了解自己的优点和缺点,认识到自己的强项和弱…

无涯教程-Perl - Subroutines(子例程)

定义子程序 Perl编程语言中 Subroutine子程序定义的一般形式如下: sub subroutine_name {body of the subroutine } 调用该Perl Subroutine的典型方式如下- subroutine_name( list of arguments ); 在Perl 5.0之前的版本中,调用 Subroutine的语法略有不同&…

【LeetCode】相同的树、 翻转二叉树 、对称二叉树

100.相同的树 两棵树相同的条件就是根节点及他们的左右子树的值val相同,结构相同,就是一模一样,那这道题最终还是要同时遍历两个树的,并且还得遍历完,那如果我们在遍历的过程中,通过设置一些不满足相同的树…

【知识图谱】图数据库Neo4jDesktop的安装图文详解(小白适用)

neo4j 的安装需要有jdk环境的支持。因此在安装Neo4j之前,需要安装Java JDK。 一.安装JDK 参考文章https://blog.csdn.net/weixin_41824534/article/details/104147067?spm1001.2014.3001.5502 二.Neo4j下载 进入Neo4j官网 选择下载中心 下滑选择Neo4j Deskto…