当前位置: 首页 > 科技观察

驳斥“低代码开发替代程序员”理论为什么专业开发人员也需要低代码?

时间:2023-03-21 17:12:50 科技观察

低代码再次风靡一时。近年来,腾讯、阿里、百度等各大互联网公司纷纷入局。国内外低代码平台已经融资数千万甚至数亿,伴随走红而来的巨大争议……无一不说明了“低代码”的火爆。事实上,低代码并不是一个新概念,它可以追溯到20世纪80年代的“第四代编程语言”。2014年,Forrester正式提出低代码的概念。低代码是从软件开发的高级语言衍生出来的一种软件开发技术。它允许用户以可视化的方式以更少的编码更快地构建和交付应用软件,全面降低软件开发成本。与传统的软件开发方式相比,低代码开发平台集成了软件开发和部署所需的IDE(集成开发环境)、服务器和数据库管理工具,覆盖了软件开发的整个生命周期。我们可以理解为VisualStudio+IIS+SQLManagementStudio(.NET技术)或者Eclipse+Tomcat+MySQLWorkbench(Java技术)的组合。以更少的编码、更快的交付和更低的成本,它还覆盖了整个软件开发生命周期。不管怎么看,低代码都可以说是一个很好的软件开发工具。那么,它为何会引起争议,甚至遭到其主要用户群体之一——程序员的诟病呢?“低代码开发将取代程序员”的想法很流行,是真的吗?为什么专业开发人员如此排斥低代码?科技浪潮带来了巨大的变化,也带来了无数的“替代论”,比如机器翻译会不会取代人工翻译,机器人记者会不会取代人类记者,低代码开发会不会取代程序员等等。低代码虽然流行,但程序员对它的态度却各不相同:鄙视:低代码技术的很多优点只是炒作,这种技术更适合初学者,不能解决复杂的技术问题;恐惧:担心被低代码取代;抗拒:低代码开发平台能否覆盖所有需求;大量封装的组件使得低代码开发平台更像一个黑盒子,可能导致难以调试、难以修改、迭代升级等技术问题;低代码开发平台配置了大量组件,简单的拖拽即可完成大量开发工作,程序员不再需要很强的技术功底。那么,以上理由真的站得住脚吗?让我们一一看看。低代码的门槛真的很低吗?低代码开发流程常被比作积木:像积木一样,以可视化的方式,通过拖拽组件的方式快速开发数据填写、流程审批等应用,满足企业中相对简单的办公需求。但这并不意味着低代码开发平台只能做到这一点。Gartner在2020年9月发布的《企业级低代码开发平台的关键能力报告》(CriticalCapabilitiesforEnterpriseLow-CodeApplicationPlatforms)中列出了低代码的11项关键能力。来源:https://www.gartner.com/en/do...专注于三个关键能力。数据建模和管理:这个指标通常被称为“模型驱动”。与表单驱动相比,模型驱动可以提供符合数据库设计范式的数据模型设计和管理能力。开发应用的复杂度越高,对系统集成的要求越高,这种能力就越关键。流程和业务逻辑:流程应用和业务逻辑开发能力和效率。这种能力有两层。第一层是指低代码开发平台是否可以开发复杂的工作流和业务处理逻辑;第二层是指开发这些功能时的方便易用程度。接口与集成:编程接口与系统集成能力。为了避免“数据孤岛”现象,企业级应用程序通常需要与其他系统集成以发挥协同作用。这就是内置集成功能和编程接口变得至关重要的地方。除非确定在可预??见的未来,该项目不涉及系统集成和扩展开发,否则开发者应关注此能力。这些关键能力表明,低代码平台在建模和逻辑方面具有强大的能力,接口和集成能力可以让专业的开发人员完成低代码无法实现的部分,通过低代码和平台之间的协同实现复杂的应用。专业代码开发。发展。当涉及到高价值或复杂的核心业务时,专业的开发人员需要了解业务需求并理清业务逻辑。从这个角度来看,低代码开发的门槛并不低。同理:海币研究院在《2021 年中国低代码/无代码市场研究报告》中提到,到2020年底,低码用户中技术人员的比例将超过75%,占据主导地位。低代码可以做所有事情吗?程序员的工作围绕开发需求展开。在选择开发工具时,程序员通常考虑的第一个问题是:这个工具能否覆盖所有需求?如果需求增长或变化,该工具是否支持操作?这些问题也适用于低代码平台的选择。在实际的项目交付过程中,如果我们只能满足99%的需求,而另外1%的需求无法满足,那么大概率真实用户不会付费。因此,在评估低代码产品时,必须保证平台能够支持所有系统模块类型的开发,同时具有足够的可扩展性,保证使用纯代码开发的模块能够与低代码模块无缝集成.集成,离不开编程接口。以国内主流的低代码开发平台MovableType为例。平台提供开箱即用的开发组件,为系统各层提供编程扩展能力,满足企业级应用开发的高扩展性需求。借助分层编程接口,开发者可以用纯代码实现新的功能,不受低代码开发平台的版本和已有功能的限制。图解:活字格的编程扩展能力当然,在具体的应用领域,低代码开发平台也有其优缺点。目前,低代码开发在2B企业应用开发中的应用更为广泛,但低代码平台不适用于用户量大的顶级互联网应用和对算法要求高、数据结构复杂的应用。低代码开发不可控?“低代码开发平台是一个黑盒,内部问题无法排查和解决,开发过程中发现问题怎么办?迭代升级难以实现怎么办?”很多程序员都会有这种疑惑。但需要注意的是,低代码开发平台本质上仍然是一种软件开发工具,用户模型和软件开发周期支持是其关键能力之一。也就是说,一个成熟的低代码开发平台具备了软件开发整个生命周期所需的全部功能,大大简化了开发者的技术栈,进一步提高了开发效率。具体来说,面对需求变更频繁、故障排查困难的问题,低代码开发平台引入版本管理机制,更高效地进行代码审查、版本管理与协调、软件迭代升级。至于调试,日志分析无疑是个好办法。例如,MovableType以日志形式输出执行过程和细节,方便程序员高效调试。对于程序员来说,低代码平台是限制还是提升?“低代码”意味着更少的代码。代码写得不多,程序员如何成长,如何获得职业成就感?其实并不是。第一,开发≠写代码。低代码平台可以减少大量重复性工作,提高开发效率,将专业开发人员从简单重复的开发需求中解放出来,将精力投入到更有价值的事情上,比如提升技术、理清业务逻辑等。其次,低代码平台的组件化和拖拽式配置,降低了开发门槛。新手程序员可以利用这种平台快速上手,加快升级打怪;有经验的程序员也有机会参与更多的项目,甚至领导一个团队。积累更多的经验值,实现快速成长。结语当迷雾散去,低代码开发平台重现高效开发工具的本色,你会选择它吗?