为什么开发人员对低代码好感度不高?

程序员们喜欢“低代码”工具的理念。 对他们来说,更少的代码意味着更少的工作和更快的项目、更高的满意度、更精简的预算甚至是更丰厚的奖金,试问谁不喜欢这些呢?

但是他们也都知道,在最后期限接近或者工具不合适时,理想和现实之间往往存在很大的反差。

程序员欣赏低代码以更少的时间和精力交付工作的能力。低代码工具理论上可以产生一种良性机制,可以搜索、排序和处理表格数据。当时机成熟的时候,他们也很乐意使用它们。

但是开发人员也担心低代码出现问题,在低代码出现问题时,他们就需要处理这些故障,并找出解决办法。

开发人在使用低代码工具比编写自己的堆栈(换句话说,使用高代码方法)更慢、更麻烦的现实之间两难。

下面是程序员对低代码工具好感度不高的9个原因。

原因一:维护可能很困难

处理低代码解决方案最棘手的部分通常是在运行几年之后才会出现。旧系统已经部署好并运行得很顺利,但是每个人都需要修复和改进。很多时候,这些额外的特性位于旧的、低代码解决方案的体系结构结构之外,并且没有合适的方法来添加它们。如果我们有源代码,我们也许能够深入研究并重建一些核心内容,但遗憾的是我们没有。如果最初的设计者知道需要这个特性,他们就会做出不一样的决定。但现实是我们依然被维护困难困住了。

原因二:千篇一律

就像去连锁餐厅吃饭一样,我们能轻易地知道菜单,也得不到什么惊喜。商业模式依赖于标准菜单和标准设计,从而节省成本,同时还提供完全一致的使用体验,这并不是一个好现象。

低代码工具就提供了千篇一律的感觉。一个稍有经验的优秀开发人员通常只需点击几下鼠标就可以识别底层工具。无论有多少配置选项、闪屏或定制的CSS皮肤,底层机制都会显示出来。对于一些想要一致性的用户来说,这可能是一种安慰,但它也屏蔽了许多惊喜和新奇感。

原因三:一刀切

产品制造商喜欢“一刀切”的产品,因为流水线要简单得多。客户则更需要定制化,而且他们特别讨厌流水线产品。

同样,低代码产品也很容易使用。只是没有那么多东西可可供更改、自定义或编写代码,所以您只能使用它们,这可能不符合一部分开发人员的心理。

原因四::有时编码比配置更容易

开发人员一直在犯一个战略性错误,将配置软件的工作量最小化。也许是因为bean计数器计算每行代码成本的指标,也许是因为总是在比较创建新代码的成本和购买现成产品的价格。在任何情况下,编码人员都喜欢假装更改平台或工具的配置文件中的参数并不是什么大问题。

低代码选项往往会带来相同的结果:在指定算法、连接数据库和填充参数时,您并没有编码。每个人都知道这只是配置问题,但实际情况是,这些工作可能需要数天或数周才能完成,直到他们真正按照您的想法运行,但它需要比实际编写代码的“工作”更长的时间。

原因五:低代码意味着盲目运行

多年来,开发人员创建了精心设计的调试工具,可以很容易地在任意位置停止软件,并深入查看所有数据结构和算法状态,以了解到底发生了什么。低代码工具则会故意对我们隐藏所有这些,并且系统自动认为它们在正确运行。

如果低代码部分像我们预期的那样工作,那么一切都是顺利的。但通常情况下,有些事情会出错,我们则会陷入困境,无法弄清黑匣子里到底发生了什么。系统在没有监测仪器的情况下盲目运行,找不到任何方法来了解发生的事情。

原因六:有时您需要插入函数来清理数据

编写过软件的人都知道,一半的工作是编写额外的少量粘合代码,以便在过滤问题的同时保持数据的流动。有时日期是ISO 8601格式,有时它们是本地首选。有时数字是整数,当它们应该是字符串时,反之亦然。

低代码产品试图通过提供过滤器或开关来承担部分工作,这些通常就足够了。但如果不是这样,低代码产品就会陷入困境。有些人尝试过在某些地方插入任意代码块,但是这是一种误用代码的方法,还会产生巨大的安全漏洞。例如,Drupal删除了在某些地方包含PHP代码的选项,以关闭潜在的安全漏洞,并提高缓存性能。

原因七:低代码通常效率低下

低代码工具的承诺是,它们知道您需要什么,然后自动交付它。不过代价是一堆厚厚的代码,它处理所有可能出现问题的奇怪配置。

如果您编写了代码,您可能知道您的公司只将数据存储在CSV文件中。但是,回到低代码总部的团队需要为所有突发事件做好计划,这意味着要使用JSON、YAML和XML,这两个版本都是1.0和1.1。市面上有几十种格式,低代码销售团队希望确保他们的工具能够处理所有这些格式。

这项工作异常复杂而浩大。最终的结果就是一切都变慢了,效率也降低了。如果你的截止日期不是太紧,你的数据集也不是太大,那你可以通过增加堆栈的计算能力来隐藏这一点,但最终结果可能不会太好。

原因八::需要经验

许多顶级的开源平台都是用学校教授的流行语言构建的,有一个庞大的人才系统,可以分解和重建用Java、JavaScript、Python或PHP等主要语言构建的堆栈。

低代码通常不被教授,因为你不需要任何指令。这些工具通常是用通用语言编写的,但这对开发人员来说并不是真正的挑战,挑战在于捆绑到低代码框架中的额外结构。如果他们要修改或扩展平台,这些就是你的团队需要花时间学习的。

原因九:容易被困住

有时启动一个低代码平台, 加入很容易,但是很难离开。 站在巨人的肩膀上,你会尽可能地减少自己的工作量,但是这个巨人的变化会牵动的你的变化,如果它停止运行或者崩溃了,你也会陷入困境。也就是说,低代码业务流程只能随着组件改变,组件的功能和种类限制了开发。

作者:Peter Wayner

Image placeholder
刘冬
未设置
  48人点赞

没有讨论,发表一下自己的看法吧

推荐文章
程序员有话说:开发人员提升自己的四种方式

开发人员之间所谓的不同“级别”的界线是模糊 的。如果你问高级开发人员、开发经理或技术总监:“初学者、初级、中级和高级之间的区别是什么?”那么很有可能他们会给你截然不同的意见。由于存在各种各样的意见,因

前端开发人员最困扰的事情有哪些?

前端和后端开发之间的界线正在发生变化。有一些常见的错误会导致前端开发人员增加工作量、浪费时间,本文将介绍一些常见的错误以及如何避免这些错误。公司向他们的开发人员和程序员提出更多的要求,让他们完成与自己

BAT大牛推荐开发人员必备Spring源码剖析文档,深度剖析Spring

为什么学习读源码我们每天都和代码打交道。经过数年的基础教育和职业培训,大部分程序员都会「写」代码,或者至少会抄代码和改代码。但是,会读代码的并不在多数,会读代码又真正读懂一些大项目的源码的,少之又少。

低代码开发平台生存在标准化之外

这一次连续创业者任向晖找到他的PMF了。4月28日,明道更名为明道云,任向晖带着他的团队从SaaS协同向低代码开发平台(LowCodePlatform)转舵,而这并非孤例,更早一些还有从九章全协同转型

低代码平台在移动开发方面的缺陷

本文由公众号EAWorld翻译发表,转载需注明出处。作者:TimoRailo 译者:白小白 原题:Whymostlow-codeplatformsfallshortonmobiledevelopmen

5G+AI能否让中兴视频再创新高?

 “中兴通讯在视频通讯已经有超过20多年的技术积累,我们应该是中国最早做视频会议自主研发的厂家,也是国内唯一两次获得国家科技进步奖的厂家”。中兴通讯副总裁、视频产品线总经理华新海在接受IT168记者专

CSS怎么控制行高?

CSS怎么控制行高?css中,调整每行文字字体间距(行距)是使用line-height属性。●line-height属性设置行间的距离(行高)。注:不允许使用负值。要实现上下换行文字行间距行高样式其实

为什么要初始化css代码?

为什么要初始化css代码?首先是因为浏览器的兼容问题,不同浏览器对有些标签的默认值是不同的,如果没对CSS初始化往往会出现浏览器之间的页面显示差异。其次初始化CSS样式可以提高编码质量,保持代码的统一

开源社区的技术债:写代码的“码农”VS 删代码的“清道夫”,谁更该被嘉奖?

大数据文摘出品编译:楚阳、橡树、钱天培对于开源项目来讲,写新代码的贡献者不一定是好程序员,但不会删代码的程序员一定不是合格的程序员——因为“删代码”才是使开源软件项目的代码简洁高效的关键所在。Mong

开发者为什么不愿意参与开源贡献?不仅是钱的原因

  对企业和开发人员来说,开源贡献具有重要意义。它能帮助企业建立自己的开源标准,同时能够吸引多样化人才,可以帮助开发人员丰富开发经验,提升个人能力。但事实上,如此明显的优势并没有吸引更多的开发人员从事

为什么阿里巴巴建议开发者谨慎使用继承?

从学习Java的第一天起,我们就知道Java是一种面向对象语言,而学习Java的第二天,我们就知道了面向对象的三大基本特性是:封装、继承、多态。所以,对于很多开发者来说,继承肯定都是不陌生的。但是,继

为什么说 Python 是人工智能最佳Web开发的语言?

由于所有用户都可以使用大量的预构建库,因此Python非常适合人工智能在Web开发中的应用–但是还有什么能让它变得如此吸引人?在AbsoluteDigitalMedia,我们将仔细研究Python的历

为什么要前后端分离?有什么优缺点

作者:Cherry300来源:jianshu.com/p/c86cee16b418一、前戏前后端分离已成为互联网项目开发的业界标准使用方式,通过nginx+tomcat的方式(也可以中间加一个node

为什么SQL正在击败NoSQL,这对未来的数据意味着什么

导读:经过多年的沉寂之后,今天的SQL正在复出。缘由如何?这对数据社区有什么影响?看看本文的分析。以下为译文。自从可以利用计算机做事以来,我们一直在收集的数据以指数级的速度在增长,因此对于数据存储、处

基于 Laravel 命令行开发 API 代码生成器

1.命令行文件生成 $phpartisanmake:commandApiGenerator 2.编写代码模板 就像你看到的,我使用了php的heredoc方式,不太优雅。开始用的文件方式,但是不支持

可自动生成代码,5款基于AI的顶级开发工具

如今,对机器学习潜力感兴趣的程序员都在讨论,如何使用人工智能和基于人工智能的软件开发工具构建应用程序。例如PyTorch和TensorFlow之类的解决方案。除此之外,机器学习技术正以另一种有趣的方式

Nginx 之父被抓:Rambler集团声称他工作时间开发了NGINX,要求全部代码所有权

俄罗斯搜索引擎Rambler.ru声称拥有NGINX代码的全部所有权。俄罗斯警方近日突击搜查了F5Networks子公司NGINX的莫斯科办事处,NGINX公司开发了互联网上最受欢迎的Web服务器

html和css不换行代码是什么?

html和css不换行代码是什么?一、HTML不换行代码:在网页排版布局中比如文章列表标题排版,无论多少文字均不希望换行显示,需要强制在一行显示完内容。这就可以nobr标签来实现。语法:内容不换行内容

网页代码中js和css指的是什么?

js指的是什么?js即javascript,是一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本

为什么我们需要 Laravel IoC 容器?

IOC容器是一个实现依赖注入的便利机制-TaylorOtwell Laravel是当今最流行、最常使用的开源现代web应用框架之一。它提供了一些独特的特性,比如EloquentORM,Query

Redis为什么是单线程、及高并发快的3大原因详解

Redis的高并发和快速原因 1.redis是基于内存的,内存的读写速度非常快; 2.redis是单线程的,省去了很多上下文切换线程的时间; 3.redis使用多路复用技术,可以处理并发的连接。非阻塞

为什么学编程?9个理由告诉你编程是最好的工作

  为什么要学习编程?可能大部分给出的答案就是因为开发工作的薪资高啊。的确这是学编程开发的原因之一,但这并不是全部的答案,下面将为大家提供9个理由告诉你编程才是最好的工作。也许你会改变对编程的看法。

为什么要学习 Rust

缘起为什么学习Rust?于我而言,也许是两年前当我迈入区块链的第一脚时就已经决定了。选择一门编程语言是很困难的,但却又是重要的,其重要程度绝对不亚于你选择在哪个地方买房子或者是你选择在哪个地方扎根发展

我哪里配置错误,为什么每次都无法正常跳转到支付宝的支付界面?

我每次学这套课程,都卡在这里,过不去。心里好难受~ 以下是我的配置整个过程:以下命令都执行过了。phpartisantinker phpartisanconfig:clear >>>config('p

为什么人到中年就危机了呢?

01、赤裸裸的中年危机前几天,《就聊挣钱》的一个球友(月亮雨)加了我的微信后,发了一条信息:您好,非常感谢您能通过微信好友请求,我在看星球第一期精华的时候,看到了您的文章,同为技术人,对您的奋斗很感慨