图 1. webflow 用于构建网站的无代码平台
[51CTO.com 快译] 代码是大多数软件程序和应用程序的骨干. 每行代码充当一条指令: 采用一种逐步性的逻辑机制, 以便计算机, 服务器和其他机器执行操作. 想创建那些指令, 就要知道如何编写代码, 这项宝贵的技能有时很吃香.
但如果你无需编写一行代码就能构建软件会怎样? 这就是无代码开发背后的想法, 这种软件开发方法一直受到追捧. 借助无代码平台, 无需编写任何底层代码即可开发软件.
图 2. Webflow
构建网站的无代码平台 Webflow 的联合创始人兼首席执行官 Vlad Magdalin 说:"无代码让不懂编写代码的人可以像软件工程师那样开发同样的应用程序. 无需代码就能实现过去用代码实现的功能."
也可以将无代码开发视为一种可视化编程. 用户通过拖放式用户界面处理代码元素, 而不是借助基于文本的开发环境. 麻省理工学院媒体实验室的 Scratch 编程语言就是一种颇受欢迎的技术, 该语言使用图形化编程块教孩子和成人如何编程.
Visual Dev School 的联合创始人 Lacey Kesler 说:"它更像是使用拥有逻辑的构建模块. 这种方法使人们无需学习如何编写代码即可为互联网构建软件."
无代码编程是软件开发领域自然发展的产物. 起初是使用汇编语言的低级编程(程序员能使用的最接近机器代码指令的语言), 如今已演变成 Java,Python,C,JavaScript 及其他编程语言. 这种演变需要添加抽象层, 隐藏机器码背后的复杂性, 从而使软件开发人员更容易编程.
尽管是技术进步的产物, 但无代码开发不是新概念. 90 年代的计算机辅助软件工程 (CASE) 工具其历史比如今的无代码平台还早. 但顾名思义, CASE 工具只是旨在帮助软件开发生命周期中的某些活动, 而不是帮助实际的编程本身. 仍然需要代码知识的微软 Visual Basic 和 Adobe Dreamweaver 被认为是无代码工具的早期版本.
图 3. 微软的 Visual Basic 无代码工具此处用来编写虚拟代理
如今有实现无代码开发的各种平台. 这包括微软的 Power Apps 和 Oracle 的 Visual Builder(用于创建移动和 Web 应用程序),Oracle 的 Application Express(用于开发业务应用程序)以及 Salesforce 的 Lightning Platform(用于客户关系管理应用程序). 连谷歌也加入其中, 最近收购了 AppSheet, 这是用于构建移动应用程序的无代码平台.
这些工具以及用它们构建的应用程序在技术界越来越受欢迎. 据 Gartner 的研究显示, 到 2024 年, 低代码应用程序开发 (也包括无代码) 将占应用程序开发活动的 65% 以上, 四分之三的大企业至少使用四种低代码开发工具.
那么, 什么因素在促使无代码编程迅猛发展?
Betty Blocks 营销副总裁 Victor Kuppers 说,"由于功能更强大的计算机, 更易访问的云计算服务和更好的编程语言, 你可以开始构建让你可以构建软件的软件."Betty Blocks 的产品让用户可以借助名为 "块"(block)的组件对应用程序进行无代码汇编.
无代码开发也是解决供需问题的方法: 开发更多软件的需求越来越高, 但能构建这种软件的开发人员数量有限. Magdalin 说:"市场显然需要更多的人来构建软件, 你用代码构建的东西又很宝贵. 不过, 编程是一项很难学的技能. 无代码工具大行其道, 因为与获得计算机学位或接受编程强化培训相比, 它们学起来要容易得多."
除了易于上手的这个优点后, 无代码平台还可以加快应用程序开发, 因而为公司降低成本. 它还杜绝了人们对产品的愿景与软件工程师如何通过代码将该愿景变为现实之间的任何问题. Kesler 说:"软件旨在满足某个目的, 解决某个问题. 借助可视化开发工具, 我们就能做到这一点, 无需将项目交给开发人员或自己学习如何编写代码. 它使我们能够解决自己的问题."
但是无代码相比代码的最重要优势也许是让软件开发更容易. 无代码平台 Bubble 的联合创始人 Emmanuel Straschnov 说:"我们正进入最了解业务情况的人或与客户互动最多的人将自行构建产品这个时代. 鉴于技术是我们生活的核心部分, 更多的人应该能够构建技术. 无代码开发让每个人都能够构建软件."
不过, 无代码编程仍然不是一应俱全的解决方案. 它不会有一样的精度, 也不会有与代码编程一样广泛的应用前景. Straschnov 说:"由于它的抽象水平更高, 因此在某些方面会受到限制. 你不会拥有与代码编程一样的灵活性."
此外, 无代码平台并非旨在取代软件开发人员. Magdalin 说:"我之前是名软件工程师, 所以过去也同样担心. 就因为编程是自动化的, 并不意味着全部技能消失了. 实际上, 现在编程技能可能更宝贵. 每家公司都会有独特的东西, 无代码解决方案解决不了. 对于这种可视化工具不支持的例外情况, 你仍需要开发人员."
说到无代码开发的未来, Straschnov 认为它已成了软件生态系统的一个自然部分, 更多的公司转向无代码平台, 软件工程师扩展这些平台以增强其功能.
Kesler 说:"我希望无代码的未来很美好, 因为它使软件开发大众化. 我知道如何编程, 我过去专门使用 Ruby on Rails, 但认识到这不是我乐于构建的方式. 一旦发现了可视化开发, 它便改变了我的一切. 无代码开发让别人以他们觉得自然的方式构建软件."
原文标题: Programming Without Code: The Rise of No-Code Software Development, 作者: Rina Diane Caballar
来源: http://developer.51cto.com/art/202003/612524.htm