作为一名软件工程师,你一定听说过低代码(LCNC)工具吧?来自谷歌的低代码趋势图显示人们对“低代码”一词越来越感兴趣。图1:GoogleTrends此外,对低代码的投入也在增加。来自Spreadsheetweb的调查数据如下:图2:Spreadsheetweb调查统计尽管受到全球经济形势持续低迷的影响,低代码相关投资的热情骤降,但Spreadsheetweb预测“低代码开发平台市场””到2027年将达到848亿美元(平均预测),前景非常乐观。图3:Spreadsheetweb调查统计但是数据归数据,回到低代码本身,它真的对软件开发有帮助吗?本文从低代码工具和开发应用程序的经典方式、低代码工具创建真正自定义应用程序的能力以及低代码工具替代品(网站模板和经典的IDE)。.1.什么是低代码?低代码工具有望解决构建网络/移动应用程序所涉及的大量成本和时间,最大限度地减少或消除花费在昂贵的工程资源上的资金,或者供应商如此承诺。典型的低代码工具试图通过为用户提供拖放界面来开发Web应用程序,即用户将UI元素放置在画布上,将它们相互连接,连接到数据源,并将某些元素添加到一些元素。构建应用程序的操作。换句话说,低代码工具为可视化软件开发提供了一个环境,而不是工程师在IDE中编写代码的传统方式。低代码方法被认为更有效并且需要更少的专业技能。以下是您在Google上搜索“无代码工具”时在第一页提到的几个低代码工具:图4:包括Bubble、Retool、MicrosoftPowerApps、Adalo、Webflow和GoogleAppsheet2。低代码继承可视化编程语言的劣势?尽管被宣传为一种新的软件开发方法,但低代码工具并不新鲜,对于经验丰富的工程师来说,它是一种熟悉的“可视化编程语言”。可视化创建程序的想法从编程的早期就已经存在,但由于一些原因从未被广泛采用。根据维基百科,“可视化编程语言(VPL)允许任何用户以图形方式而非文本方式操作程序元素。现在将这句话与维基百科对低代码开发平台的定义进行比较:“低代码开发平台允许程序员和非程序员采用图形用户界面并对其进行配置,而无需传统的计算机编程方式来创建应用软件。”这两个解释听起来很相似?或者它们完全相似?要理解低代码为什么没有我们想象的那么有前途,有必要分析一下为什么可视化编程语言没有流行起来。IvanDanyliuk在他的文章表示中:可视化编程最适合定义空间关系(图形元素和UI),而文本编程最适合定义时间关系(时间轴上的事件顺序)。换句话说,人脑很容易将映射空间的物理对象形象化,而不是用文字来描述它们;用文本描述事件的顺序(算法或指令)比绘制流程图更容易。这是人脑的自然属性,所以不要反过来,适应这样的规律比较好。使用可视化编程的另一个问题是,与在键盘上打字相比,它实际上增加了另一层抽象(鼠标和屏幕),这更容易、更快地将想法变为现实。换句话说,打字比移动鼠标更快。快的。Ivan也认为(我同意):“可视化编程语言”从未广泛流行的原因是人们希望以文本而不是视觉方式给出指令。从我的角度来看,这与低代码工具无关,因为同样的原因从长远来看会失败——算法更擅长读写文本。低代码/无代码工具试图像“可视化编程语言”一样对待软件开发,它也继承了可视化编程语言的弱点,在我看来,注定要遭遇同样的命运。3.写代码在软件行业永远不会过时。另外,在我看来,低代码工具不是图灵完备的——低代码工具只能实现一组有限的配置。如果一个系统可以解决任何计算问题,则可以说它是图灵完备的,无论有多难,只要有足够的时间和记忆以及相关的说明。由于最优最好的方式是文本形式,指定这些指令的能力会被低代码工具的性质削弱,所以整个方法是有限的。编程语言实际上是自然语言的计算机可读版本,它足以描述任意数量的对象之间的任意关系。这意味着,为了保持低代码工具的灵活性,构建真正满足特定需求的应用程序,用户不得不在低代码工具中编写代码(SQL查询、JavaScript注入或模板等),这一直是在前面提到的一些工具中成为可能,最终使低代码工具成为IDE。看下面的逻辑:我想用尽可能少的代码构建一个应用程序;我使用低代码工具创建应用程序;我需要扩展应用程序以满足我的特定要求,所以我在低代码工具中编写代码;既然我已经在编码了,为什么不先安装一个IDE,然后用正常的方式编写代码呢?因此,为了能够构建功能齐全的软件,低代码工具需要与IDE集成,从而与当前产品(VisualStudio和JetBrains)竞争。在我看来,向IDE(即UI构建器)添加低代码功能??比从头构建新的复杂IDE更容易。此外,低代码工具是基于浏览器的,因此IDE也必须是基于浏览器的,这限制了它的功能。这就是为什么我认为编写代码在软件行业永远不会过时的原因。4、为什么没有人谈论模板市场?模板、入门工具包、主题、样板,这些词具有非常相似的含义,一组用作应用程序起点的文件和文件夹。有各种示例,例如Github上的免费模板(例如create-react-app或react-material-admin)、ThemeForest、TemplateMonster、Creative-Tim和Flatlogic,它们有大量的WordPress主题集合,专门用于web模板的资源等。自2013年发布以来,仅Flatlogic就售出了至少20,000个许可证。Metronic售出了超过100,000个许可证。免费模板使用更广泛。每天有多少用户使用create-react-app?在我看来,模板创造了真正的价值。也许这是我的偏见,但我不知道有任何单独使用低代码构建的实际应用程序。最终,人们需要将应用程序定制为代码,而不是服务,因为拥有代码为定制、扩展和集成打开了无限的机会。所以重点是模板市场是一个需要颠覆和创新的市场,而低代码市场不是这样的市场,因为最终每个人都需要编写代码。首先,模板市场非常活跃。可能最重要的玩家是Envato,仅它一家就拥有超过2亿美元的年收入和3600万美元的利润。就今天整个市场的规模而言,我估计主要市场参与者的实际收入今天至少有10亿美元。但是你从来没有在新闻中听说过这个市场。我认为对低代码工具的投资要多得多,而对模板/主题的投资要少得多,因为向投资者推销无需编码即可创建Web应用程序的“灵丹妙药”要容易得多,因为大多数投资者并不精通技术,因此不会了解本文所解释的内容。各种预测低代码市场将在几年内达到数十亿美元的“研究”也起到了造势的作用。相反,根本没有人谈论模板市场。这就是为什么我们创建了一个工具,该工具可以从技术堆栈、UI设计和数据库架构等一些输入中为全栈Web应用程序生成代码库。我们不会在我们的产品上贴上无代码标签来跟上趋势,我们解决实际市场中的实际问题。作者:PhilipDaineka标题:低代码/无代码的硬限制以及什么是替代解决方案
