最近,许多低码/无码解决方案在企业中得到了发展,从而使非技术人员可以选择创建简单的应用程序。 分析人士预测,低码行业将以每年20%以上的速度增长。 但是什么是低码,为什么它如此流行,它又有什么问题呢?

低码是我们在过去几十年间偶尔看到的东西–拖放式UI设计器,使您可以创建简单的应用程序而无需编码技能。 产品已经成熟,几乎都提供了相似的功能-在拖放式实体关系图中设计实体关系的能力,通过WYSIWYG设计UI的能力,通过类似于BPMN的符号设计简单流程,通过以下方式调用外部服务的能力导入Web服务定义,以便从预烘焙的实体定义中进行选择,以及在外部数据库和电子表格中获取和存储数据。

该领域中有许多工具– MS PowerApps,OutSystems,Appian,Mendix,Google最近收购的AppSheets,Ninox,WaveMaker等。 而且它们的方法和功能集可能略有不同,但总的要点是能够轻松创建应用程序(基于Web,基于移动设备,混合),以解决这些用户遇到的一些即时难题。一个成熟的IT项目及其相关的开发成本实在是过大了。

这听起来很棒–您不必依靠非IT公司中过于忙碌且反应不频繁的IT部门,您只需自己构建一些东西就可以优化您的紧迫问题并数字化您的书面流程。 它可以做到。 坦白地说,我喜欢现有这种工具的想法,因为很大一部分集中式系统和历时多年的开发项目无法很好地处理大部分数字转换。 在这样的环境中,需要大量敏捷性,而对于昂贵的开发人员,可用性有限的数字转换需求越来越大。 我们必须承认,专业开发人员不可能无处不在,无法解决信息技术可以解决的所有问题。 这样的工具使数字化转型民主化,允许非技术人员创建软件。

或至少这是理论。 实际上,这在许多方面都具有挑战性:

  • 需要一些技术知识 -能够绘制实体关系图很酷,但是首先您需要知道什么是数据模型。 能够导入Web服务并能够调用它是很好的,但是您必须知道Web服务是什么。 集成用户目录意味着您知道什么是LDAP / AD。 我不确定非技术人员能否真正利用这些功能。 即使打开一个新对话框,某些工具仍然需要简单的代码,并且您必须从某个地方复制粘贴该代码。
  • 与本地系统集成 –构建有用的东西几乎总是需要与现有系统集成。 假设一切都在“云”中是很好的,但是从第三方SaaS的角度来看,即使云也可以视为内部部署。 我见过的许多工具都通过提供IP,用户名和密码来与数据库集成-几乎从来没有,这是一个坏主意。 连接到机构基础结构中某物的能力(即使该基础结构在Azure上并且您正在使用MS PowerApps)也意味着权限,网络规则配置,帐户,批准。 而且您必须知道要求什么才能得到它。
  • 供应商锁定 –大多数低代码工具使用专有格式进行元描述(例如,有些甚至将其元数据的二进制表示形式存储在本地sqlite数据库中)。 一些提供程序允许您通过安装他们的服务器端应用程序在自己的云上运行该应用程序,但是一些纯粹是SaaS。 使用一种工具构建应用程序后,就无法真正切换到另一种工具。 WaveMaker和Skyve是很好的例外,它们会生成实际的Java代码,您可以随时下载它们。 锁定不好吗? 好吧,是的–如果碰巧您需要尚不可用的功能或尚不存在的集成功能,那么您将陷入困境。
  • 影子IT –假定组织中的所有IT均由IT部门进行管理和观察。 在监视,安全性,合规性,数据保护,生命周期管理,技术支持等方面。使用低代码,这些应用程序可以存在,而IT部门甚至不知道它们,并且带来许多风险(我将在下面讨论)
  • 可持续性 –如果一家低代码公司倒闭,或者被决定淘汰某个产品或一系列功能的人收购,该怎么办? 当创建低代码应用程序的员工离开并且没有人知道如何使用所选工具进行“编程”以支持该应用程序时,会发生什么? 低代码应用程序本身成为旧版时会发生什么? 由于供应商锁定并且缺乏任何标准化,因此在可持续性方面承担着很大的风险。 当然,您将以某种方式解决当前的问题,但是您可能会在此基础上创建更多的问题。
  • 安全性 –一方面,使用PaaS / SaaS可能被视为内置安全性。 另一方面,非技术人员无法评估给定平台的安全性。 而且安全性不能完全“内置” –您必须确保需要身份验证,在列入白名单的办公地点之外看不见应用程序,未经授权的人员也不能导出数据,并且必须防止XSS,CSRF,SQLi等。 即使平台提供了这些选项,非技术人员也不知道他们必须首先照顾它们。
  • 合规性 –许多行业受到监管,并且有横向法规,例如数据保护法规(GDPR,CCPA)。 数据泄露经常发生是因为数据是从其原始的受良好保护的存储中取出的,并保存在数据保护人员不知道的地方(例如低代码应用程序)。 加密,匿名化,数据最小化,保留期–大多数低码解决方案都不支持这些功能,不熟悉这些细节的员工不太可能花更多的精力来兼容该应用程序。
  • 无法控制的错误–当您的软件中存在错误时,可以对其进行修复。 如果它在库中,则可以对其进行修补。 如果在第三方平台的一组工具中,您将无能为力。 在测试几种低代码解决方案的过程中,我偶然发现了许多错误和不一致之处。

其中一些问题也存在于常规项目中。 开发人员可能不知道如何使应用程序符合GDPR要求 ,在许多项目中安全性常常被忽略,并且有时选择技术时没有考虑到可持续性。 但是低代码解决方案加剧了这些问题。

有趣的是,低代码是更广泛技术的一部分。 它们以“快速应用程序开发”(RAD)工具和框架开始,以“无代码”(也就是功能较少的无代码替代品)结束。 像Spring Roo这样的代码生成工具是RAD,OpenXava是RAD框架。 某些低代码工具实际上可以看作是RAD工具-开发人员团队可以很容易地使用上述WaveMaker来快速交付较简单的项目,而无需牺牲过多的控制权(我想这是由软件开发公司收购的)。

然后是RPA,即“机器人流程自动化”,我将直截了当简化为“屏幕抓取的低代码”,您可以使涉及旧系统的某些流程自动化,而这些流程只能通过按下“机器人”来提取信息并执行操作。屏幕上的按钮。 RPA稍微不在快速的应用程序开发范围之内,但是它带来了一个重要的点-有RPA开发人员。 技术水平不高,不具备开发人员资格的人员,但仍可以使用RPA工具实现流程自动化。 低代码和RAD的某些风格也是如此-假定您不必一定要开发某些技术,但是实际上可以(并且有)专门的专家可以使用这些工具来构建东西。 他们不是真正的开发人员,但是如果您可以交付一个由5个低代码开发人员和一个实际开发人员组成的项目,则可以大大降低成本。

开发人员和大公司肯定有一个“工具箱”,它们可以在项目中重复使用–到处都是代码段,偶尔还有一些库或微服务。 但是每个新项目都涉及很多样板,甚至开发人员也需要摆脱这些样板。 我当然不是代码生成的忠实拥护者,但是RAD具有一些优点,我们必须对其进行探索,以便在不牺牲质量的情况下提高效率。 并且能够提供简单的工具,否则这些工具将使用次优的低代码方法构建。

但是,已经模糊了“开发人员”和“非开发人员”之间的界限。 在关注我们的框架时,我们不应该对技术欠佳的工具有所了解。 如果仅仅是因为存在风险,从长远来看,我们将不得不为他们提供支持。 而且因为它们将成为我们软件必须与之交互的软件生态系统的一部分。

我不知道这是否是正确的,可持续的数字化转型方法。 当然,我希望每个人都能够在高级RAD工具的帮助下至少编写简单的代码。 而且我们可能会在几十年内到达那里。 但是,由于现在需要进行数字化转型,因此我们可能必须使用已有的东西,并尝试使其更安全,合规,减少供应商锁定并为IT部门提供更多可见性。 否则,我们有可能造成比现在更大的混乱局面。

翻译自: https://www.javacodegeeks.com/2020/05/low-code-rapid-application-development-and-digital-transformation.html

低代码,快速应用开发和数字转换相关推荐

  1. 机智云自助开发平台,低代码快速开发新系统

    机智云自助开发平台,作为一个零门槛.超低代码的iot开发平台,通过傻瓜化的自助工具.在线可视化开发环境.图形化开发界面.完善的SDK与API服务能力,最大限度降低了物联网硬件开发的技术门槛,灵活的权限 ...

  2. 有什么好用的低代码快速开发平台?

    上次,有位朋友私信我,需求是想要一款低代码快速开发平台用来做系统项目,要求上手快.操作简单.且支持ERP或进销存等项目系统的快速开发.那位私信的朋友赶紧出来冒个头哈,我现在帮你找到了~ 那这里,本人推 ...

  3. 果创云-在线中文接口编程的网站,低代码快速开发你的接口

    中文接口编程 果创云(YesApi.cn),是一个API接口低代码开发平台.现在已经支持中文接口编程.也就是,你可以使用中文来自助开发自己的API接口. 不需要编程基础,就可以在线创建和开发自己的AP ...

  4. 钉钉api 获取 accesstoken_低代码快速对接钉钉日程

    上周帮客户做的CRM项目里,做了一个日程表的功能,主要用于展示销售员每天的日程安排(todo),每项记录都会关联一个需要跟进的客户,但是并没有提醒功能,用户每次都需要登录系统确认今天是否有日程安排,要 ...

  5. 免费开源低代码拖拽开发_资料来源:面向开源开发人员的免费代码搜索工具

    免费开源低代码拖拽开发 开源代码的金矿可供程序员使用,但是选择正确的库并了解如何使用它可能很棘手. Sourcegraph创建了一个搜索引擎和代码浏览器,以帮助开发人员找到更好的代码并更快地构建软件. ...

  6. 《数据分析-SmartChart02》SmartChart低代码平台-可视化开发

    SmartChart低代码平台-可视化开发 1.简单了解python + django + echarts开发 2.SmartChart ​ SmartChart是一个低代码开发平台,支持积木式的可视 ...

  7. 18 款低代码平台!开发解放双手

    低代码成了企追求的主流目标,与使用计算机编程语言构建应用程序的传统方法不同,低代码开发平台是使用图形向导来创建和构建软件的应用程序开发平台.因此,在许多情况下,低代码或无代码(几乎没有代码)这个名称是 ...

  8. 18 款低代码平台!开发解放双手!

    大家好,我是宝哥! 低代码成了企追求的主流目标,与使用计算机编程语言构建应用程序的传统方法不同,低代码开发平台是使用图形向导来创建和构建软件的应用程序开发平台.因此,在许多情况下,低代码或无代码(几乎 ...

  9. 浅论前后端分离模式:低代码强势推动开发效率提升

    编者按:本文介绍前后端分离,以及低代码如何采用前后端分离等先进技术为软件开发赋能提效,提高用户开发体验. 如何理解分离前后端? 前后端分离,其实就是将一个单体应用拆分成两个独立的应用,只通过简单的AP ...

最新文章

  1. 飞凌 修改ip地址 linux,linux上搭建DHCP服务
  2. html列表穿插广告怎么实现,基于innerHTML中的script广告实现代码[广告全部放在一个js里面]...
  3. SpringMVC流程图示
  4. 如何让SAP Spartacus ng build生成的JavaScript资源附带上store ID
  5. 数据仓库事实表分类[转]
  6. 电子计算机职业40201,天津滨海中等专业学校
  7. Mapreduce原理和YARN
  8. JAVA之多线程概念及其几种实现方法优劣分析
  9. MySQL 中的数据类型介绍
  10. 这才是在线Word转PDF的正确姿势
  11. SDN相关组织——ODL
  12. 神经网络利用哪种算法将损失函数的值降到最低
  13. maven移除全部依赖写法 exclude
  14. html5开卷考试,美国AP开卷考试
  15. 【OMNET+Veins+SUMO】【视频】车联网仿真框架搭建指南
  16. JHOK-ZBL1漏电继电器
  17. 记:《洛克菲勒留给儿子的38封信》-- 5
  18. soup.select()函数的使用用法
  19. max31865C语言程序,max31865+pt100温度传感器实验代码
  20. linux chrome字体发虚,软件、Chrome字体细到模糊发虚解决方案

热门文章

  1. 用OpenLayers解析GML文件
  2. 基于Canvas的js简单版接元宝游戏
  3. Express,Koa和Hapi.js的并排比较
  4. 计算机科学的好处和坏处,电脑的坏处作文(五篇)
  5. Android 手机百科全书: 新手入门
  6. 《这些年,我们读过的技术经典图书》主题有奖征文【已结束】
  7. JavaScript获取日期的季度
  8. 洛谷4438 [HNOI/AHOI2018]道路
  9. GB28181学习之路——PS流解析H264
  10. ABBYY 填坑!!!多人员调用ABBYY转换任务时,就会出现程序报错