作者 | Melania Sulak
译者 | 明明如月,责编 | 屠敏
头图 | CSDN 下载自东方 IC
出品 | CSDN(ID:CSDNnews)
以下为译文:
传统的软件开发方式是选用某种编程语言来编写代码,而 low-code(低代码)则是采用可视化开发方法,它使用拖放组件、模型驱动逻辑和友好的图形界面来实现功能开发。
什么是 Low-Code?
Low-Code 让各种层次的开发人员都能开发 web 和移动应用程序。此外,low-code 实现软件交付周期的绝大多数环节的自动化。通过预先建立的持续集成和交付以及一键式环境,开发人员可以将大部分精力放在提供真实的业务价值上。
非技术开发人员和专业程序员都能享受到 low-code 的好处。使用 low-code,非技术开发人员无需编写代码,就可以快速轻松地创建应用,而专业开发人员也能从平台的自动化,云托管基础架构和第三方管理方面获得好处。使用 low-code 可以快速将解决方案快速推向市场。此外, low-code 应用开发几乎可以开发出任何类型的移动应用。
如上所述,当把 low-code 与传统编程方式进行对比时,有些人甚至认为在构建企业级系统时 low-code 可以完全取代传统编码方式。似乎无论是理论还是实践来看,都是可行的。然而,真的是这样的吗?
在数据为主的项目中,low-code 看似几乎可以将传统的编程方式彻底取代,但事实上并非如此。low-code 和传统开发方式是一对很好的搭档,两者结合起来能够创造更多的商业价值。
将这两种开发方法结合起来,可以使许多组件加速开发进度并降低开发成本。例如,可以使用 low-code 构建系统的核心功能,使用传统的编码方式可用来开发更复杂和定制化的功能。
此外,low-code 将构建应用的能力扩展到了“大众开发者”,促进了应用程序开发的民主化。大众开发人员是指那些具备创建应用知识的人,但他们不是传统意义上的程序员。这有助于企业开发内部应用,让专业程序员将时间花在需要手动编码的更紧迫的事情上。
上面介绍了将 low-code 和传统软件开发相结合促进业务和项目交付的案例。也侧面反映了两者之间存在着差异。
接下来,我们重点对比他们之间的差异。
需求定义
在为标准项目定义系统需求时,确定面向哪个操作系统开发非常重要,这也是 low-code 与传统编程方式明显的不同。传统的软件开发,在项目开始之前,必须选择特定的编程语言、开发环境和设备。举个例子,开发的 Android 移动应用程序在 Mac OS 桌面系统上就无法使用,也很难轻松转换到 Mac OS 桌面应用。
使用传统编码方式开发应用程序,通常需要为各种不同的操作系统、环境和设备进行开发的能力。这可能包括使用更通用的编程语言,或者通过一些专用代码补足特定的功能等等。采用传统编程时,开发团队将需要付出巨大的努力,才能使其解决方案在其针对性开发的范围之外工作。
在 low-code 开发模式下几乎不存在这种问题。这是因为 low-code 的拖放可视化界面通常支持无缝地跨各种操作系统工作。此外,某些平台(如 Mendix(https://www.mendix.com/)) 提供了单独的工具来管理需求和错误,这使得它们能够很好地支持敏捷开发。虽然定制 low-code 解决方案的细节可能不同,但结果总是相同的——使用 low-code 平台构建的应用程序能够无缝地适应许多不同的操作系统和设备。
此时,你可能想知道这种好处是否仅限于简单的应用程序,答案是否定的。世界领先的 low-code 平台提供商,如 Mendix、 OutSystems 或 Microsoft Power Apps,支持使用 low-code 工具构建企业级和可伸缩的系统。
这种无缝的适应性和本地化的开发能力使得 low-code 相对于传统编程具有不可否认的市场优势。
DevOps 自动化
标准应用程序部署比较复杂,因为每行代码必须首先在非生产环境中进行测试,然后才能进入生产环境。还得检查应用实例是否能够很好地在分配的配置中运行。因此,传统应用程序的部署往往比较复杂和耗时。
但是,在使用 low-code 平台时(https://www.objectivity.co.uk/case-studies/travel-desk-application-mendix-solution/),可以省略某些典型的部署步骤。例如, low-code 的即用模块及其相应的功能在到达平台之前就进行了测试,这可以帮助我们节省测试时间。此外,low-code 开发环境是基于云端的,这就进一步简化了测试步骤并提高了测试的效率。
支持和维护
对于传统编程方式来说,维护应用程序或者更新应用程序相对来说比较麻烦。例如,业务目标和需求会随着时间的推移而变化,为了应对这种变化,必须编写全新的代码。这可能会阻碍企业创新,因为这会使企业更难应对不断变化的客户期望。考虑到这一点,如果数据分析出如果为应用新增某个新的功能会对用户有较大帮助,使用传统的编码方式,就需要开发团队的帮助来实现这一目标。如果数据中心配置出现不同步的情况,就需要手动修复。这些都是导致应用程序过时、因操作系统变更、技术进化而产生遗留软件的主要原因。因此,采用传统的编码方式就需要付出额外的努力来保持解决方案的完整功能。
然而对于 low-code 软件开发而言,这些问题根本不存在。 low-code 平台的可视化界面模块完全由平台提供者管理。这意味着你可以在任何需要的时候对解决方案进行快速修改,而不必担心应用程序的设计是否已经最优化。
low-code 和传统的开发方式哪种更好?
你可能已经猜到了,这个问题的答案是:“视情况而定”。凭借其创新的加速交付的功能和特性,low-code 平台似乎要占据主导地位。通过采用可靠的开发方法并对其进行了改进,在应用程序交付方面创造前所未有的新局面。
尽管如此,传统编程方式也不应该被低估。传统的编码方式的优势在于无与伦比的自由和灵活性。能提供量身定制的解决方案,有时候,这正是一些公司所需要的。
所以,要视情况而定。
然而,还有第三种方式,即将传统的编程方式和 low-code 平台一起使用。将它们结合起来既能够让开发团队专注于更复杂的、定制的软件开发需求,又可以发挥 low-code 更短的开发周期和过程优化的优势。将两者优势结合,即发挥 low-code 的速度和创新优势,以及传统开发方式来满足定制化的软件需求,可以产生高质量的企业级解决方案。
原文:https://www.objectivity.co.uk/blog/low-code-traditional-development/
本文为 CSDN 翻译,转载请注明来源出处。
更多精彩推荐
☞JavaScript 爆红后,微软为何还要开发 TypeScript?
☞打通语言理论和统计 NLP 两个世界,Transformers/GNNs 架构能做到吗?
☞如何应对云原生之旅中的安全挑战?
☞自拍卡通化,拯救动画师,StyleGAN再次玩出新花样
☞还不懂Redis?看完这个故事就明白了!
☞区块链+生鲜:杜绝“偷梁换柱”和“以次充好”
点分享点点赞点在看