灵魂发问:低代码真的会使程序过于复杂吗?

飞速低代码平台
• 阅读 550

灵魂发问:低代码真的会使程序过于复杂吗?

低代码继续受到大量关注和争论。许多软件开发人员仍然想知道使用低代码是否会使应用程序开发过程更好,或者它是否会干扰开发过程并导致劣质应用程序。其他人则担心低代码的安全隐患。

当然,如果使用低代码的必然结果是更高的应用程序复杂性,那么低代码可能会导致安全问题的难度增加。但真的是这样吗?我最近写了很多关于应用程序复杂性的文章,还有很多关于低代码的文章。但是应用程序复杂性与使用低代码之间的相关性是一个有趣的观点。

复杂性与方法无关

需要明确的是,低代码的必然结果不一定是复杂性。就像传统的应用程序开发一样,复杂性可以而且经常会进入产品代码库的生命周期。虽然不是不可避免的,但它很常见。无论应用程序是如何构建的,你都可以采取许多步骤来降低应用程序的复杂性,从而提高性能、可扩展性、可用性和创新速度。

是的,与所有应用程序一样,低代码应用程序可能会变得复杂,并且需要使用简化技术来降低复杂性。但这些问题与使用低代码无关。它们在常规产品开发过程中同样重要。

未知并不复杂

低代码确实增加了应用程序中不是由开发团队直接编写的代码量。还有更多代码是由低代码平台自动生成的,或者包含在你的应用程序运行所需的库中,但不是你的开发人员的产品。因此,当你使用低代码技术时,你的应用程序中通常会有更多“未知”代码。

但未知与复杂性不同。未知代码(由其他人提供并添加到你的应用程序的代码)本身不会增加应用程序的复杂性。

事实上,情况可能正好相反。

低代码降低复杂性

使用低代码开发技术可以减少过度复杂性渗入应用程序的可能性。通过简化应用程序开发人员的认知负荷和时间压力,低代码平台允许开发人员专注于更大的图景、应用程序业务逻辑,而较少关注细节。

细枝末节会发生什么?它们由低代码环境处理。此外,低代码环境将使用标准化的、经过验证的技术来完成这些低级任务。自动生成的代码和库代码早在你的应用程序团队使用它之前就已开发、测试和改进。你使用低代码构建应用程序的次数越多,在你的应用程序中使用的这种预先测试的标准化代码的数量就越多。使用低代码工具来构建你的应用程序会导致更多地使用标准化编码技术、行业最佳实践,并最终实现更多的软件重用。

但是复杂性呢?增加标准化编码的使用和利用软件重用是用于降低应用程序复杂性的常用策略。标准化编码减少了理解应用程序如何工作所涉及的认知负担,而代码重用往往会减少复杂应用程序中可能出现故障的移动部件的数量。因此,使用低代码工具创建的应用程序将比使用传统编程技术开发的功能等效应用程序更简单。

标准化和重用如何影响复杂性?

当我们考虑应用程序的复杂性时,我们通常会考虑应用程序的两个不同方面:组成应用程序的组件的大小和数量,以及应用程序软件的更改率。

增加对可重用代码的使用会减少应用程序中组件的大小和数量,而增加对标准化编码技术的使用往往会降低变化率——至少对于应用标准化编码的模块或组件而言。

任何给定应用程序的实际情况都会更加复杂,但基本原理仍然适用。增加标准化编码技术的使用和增加可重用软件组件的使用往往会降低最终应用程序的复杂性。

这并不新鲜

这种分析对于低代码来说并不是新的或独特的。几十年来,我们一直使用软件抽象来“隐藏”开发人员的代码复杂性。每当我们使用高级语言(例如 C、Java、Ruby 或 Go)时,我们都会抽象出为执行所需操作而创建和执行的实际代码。我们将开发重点放在“更高级别的构造”上,允许编译器或解释器处理创建和运行机器代码的细节。

它并不止于编译器。当我们使用更高级别的软件包、环境和框架时,我们也会抽象出复杂性,以便我们可以专注于更高级别的功能。因此,使用 Ruby on Rails、Spring、Hibernate、Gin、jQuery、Bootstrap 甚至 HTML/CSS,我们正在抽象出复杂性,以便在更高层次上工作。结果是更强大的应用程序和更高的可靠性,更少的开发工作和更低的支持成本。这与当今低代码社区中讨论的论点没有什么不同。

软件开发的世界是一个复杂的世界,每天都有新的挑战出现。软件开发人员经常使用工具、资源、环境和技术来简化软件开发过程。最近,低代码技术得到了改进,低代码平台已成为改进软件开发过程的有用工具,而不会增加应用程序的过度复杂性。

点赞
收藏
评论区
推荐文章
低代码开发平台 | 低代码的衍生历程、优势及未来趋势
通过简单的拖拉拽操作,而不用编写复杂的代码,实现少写代码或者不写代码,就能快速高效完成业务目标。低代码平台演进1.低代码概念低代码是无需编码(0代码)或通过少量代码就可以快速生成应用程序的开发平台。通过可视化进行应用程序开发的方法,具有不同经验水平的开发人员可以通过图形化的用户界面,使用拖拽组件和模型驱动的逻辑来创建网页和移动应用程序。2.低代码衍生历
企业级飞速低代码 | 这5个理由让软件架构师积极拥抱低代码
从避免技术债务到简化和整合业务流程到解锁单体系统,低代码提供了速度和灵活性。软件开发者和架构师曾经有理由对低代码技术持怀疑态度,但今天,许多成熟的低代码平台使敏捷开发团队能够提高生产力、增加质量、并频繁部署。开发人员使用低代码技术来构建应用程序、客户体验、门户网站、搜索体验、工作流集成、数据管道、数据流、仪表板、测试自动化、机器学习模型和其他解决方案。"低代
企业级低代码 | 灵魂拷问:低代码真的安全可靠吗? | 飞速创软
在一篇题为《低代码和无代码开发的4个安全问题》的文章中,作者ChrisHughes表示,“通过允许企业中更多的人开发应用程序,低代码开发会产生新的漏洞,并在安全性方面隐藏问题。”我并不同意这个说法。具体来说,低代码或无代码解决方案本身并没有什么安全或不安全的地方。所有应用程序开发框架、系统、流程和策略(手动或自动)的安全性与企业为确保它们安全所做的投资
企业级飞速低代码开发平台 | 产品介绍 | APass平台 | 全场景适用
​1、低代码是什么低代码通常是指APaas产品,通过为开发者提供可视化的应用开发环境,降低或去除应用开发对原生代码编写的需求量,进而实现便捷构建应用程序的一种解决方案。因此,低代码平台也常备成为APaas平台。广义上低代码概念涵盖所有能够完成代码的集成,减少代码开发的应用过程和服务,但狭义上低代码的概念更倾向定位满足企业业务端应用需求,通过可视化界面,利用少
低代码开发,这是企业数字化的未来吗?
随着移动互联网的飞速发展,低代码开发平台已成为CIO的焦点。在市场竞争和跨行业持续创新的数字化环境中,低代码工具可以帮助企业简化应用程序开发,提高开发效率。在飞速低代码开发平台,可以使不同经验水平的开发人员通过拖放组件和模型驱动的逻辑来创建应用程序
Ui2Code+ChatGPT助力低代码搭建 | 京东云技术团队
前言低代码开发平台(LCDP),是低代码或无代码通过快速搭建配置的方式完成一个应用程序的开发与上线,可视化低代码就是可视化的DSL,它的优点更多的是来源可视化,相对的,它的局限性也还是来源于可视化,复杂的业务逻辑用低代码可能会更加复杂。低代码应该是特定领域
飞速低代码平台 | 风口上的低代码,专业开发者需要考虑哪些?
低代码平台采用可视化的声明性技术,而不是传统的编程方式,开发人员和非开发人员都使用这些技术,并显著减少了交付应用程序和自动化过程的时间和精力。即便如此,低代码对不同的人来说仍然意味着很多事情,因为在这个总称下存在几种工具类型:网站生成器、表单生成器、API连接器、数据库生成器、工作流自动化等。这里,我们将介绍低代码开发与“无代码开发”的区别、主要用例、平台使
飞速 | 从表单驱动到模型驱动,解读低代码开发平台的发展趋势
随着社会数字化进程的加速,旺盛的企业个性化需求和有限的专业开发人员供给之间的矛盾也日益显著,业界亟需更快门槛、更高效率的开发方法和工具,低代码技术便应运而生。低代码开发,是通过编写少量代码甚至无需代码,就可以快速生成应用程序的一种方法和工具。借助低代码,使用者无需编码即可完成企业系统的常用功能,少量编码开发更多扩展功能。(低代码开发包含可视化设计和编码扩展能
飞速创软 | “ 无代码 ” 并不是 “ 低代码 ” 的进阶版
​在同客户和业界人士探讨 “ 更高效率的软件开发方式 ” 时,发现大多数人并不清楚 “ 低代码 ”和 “ 无代码 ” 之间的区别。低代码和无代码开发平台都提供了无需编写代码即可开发软件应用程序的能力,而且厂商都在突出 “ 高生产率 ” 这一卖点来争夺市场,甚至有无代码厂商宣称 “ 无代码 ” 是 “ 低代码 ” 的进化版。事实真的如此吗?当充分了解这两种技术