[]
        
(Showing Draft Content)

第二部分:低代码的概念、价值与发展现状

在之前的文章中,我们从企业软件复杂度长期累积的角度,解释了低代码产生的历史背景。这里将进一步回答一个更为现实的问题:当企业在讨论“低代码”时,究竟在讨论什么?


低代码(Low-Code)一词最早并非诞生于学术论文或软件工程理论,而是最早出现在行业研究机构Forrester于2014年发表的一篇行业研究报告中,其“让人们可以用最少的手工编码就可以快速开发应用,并可以快速配置和部署的一种技术和工具”的定义,仅明确了该技术的价值与核心差异,对技术实现和能力边界持开放态度。在实践中,低代码并不存在一个严格统一、被所有厂商和用户共同接受的定义。不同厂商在产品宣传中对低代码的描述差异极大,有的强调拖拽式页面开发,有的强调业务人员也能开发系统,还有的则将其定位为专业开发者的效率工具。这种差异并非偶然,而是低代码本身处于持续演进过程中的自然结果。


理解低代码的概念与现状,关键不在于寻找一句标准定义,而在于理解其价值主张、抽象方式和工程边界


本章将围绕以下几个问题展开:

  • 为什么低代码首先是一个商业概念,而非单一技术名词

  • 低代码试图解决的核心问题究竟是什么

  • 不同低代码形态之间的本质差异

  • 当前低代码平台在技术能力上的共性与现实边界


第一章 低代码首先是一个商业概念

在讨论低代码解决了什么问题之前,有必要先回答一个更基础、但经常被回避的问题:低代码究竟“是什么”。如果缺乏这一层澄清,低代码很容易被误解为某种界面形态、某类开发技巧,甚至被简单归类为更友好的编程方式。


从企业软件和软件工程体系的整体结构来看,低代码并不是游离在体系之外的新物种,而是位于软件技术栈中一个非常明确的位置。理解这一位置,是理解低代码商业属性的前提。

1.1 从“软件”到“开发工具”的分层视角

如果将企业软件按照抽象层级和职责进行简化分层,大致可以得到如下结构:

  • 软件:直接面向业务用户,承载具体业务流程和业务规则,如 ERP、MES、CRM、报销系统等。

  • 基础软件:为上层软件提供通用运行环境和基础能力,如操作系统、数据库、消息队列、中间件等。

  • 中间件:位于基础软件与应用软件之间,解决通用但非业务特有的问题,如事务管理、服务通信、权限认证、流程引擎、规则引擎等。

  • 开发工具:用于生产软件本身的工具与平台,如编程语言、IDE、框架、脚手架、CI/CD 工具等。

image

图:低代码所属的开发工具在软件分类中的位置


从定位上看,低代码更接近于编程语言、集成开发环境(IDE)、框架和组件的组合体,本质上是面向企业软件开发的生产工具,而非直接交付给业务用户使用的业务系统。这一点非常关键。将低代码理解为“另一种应用软件”,往往会导致以下误判:

  • 用业务系统的标准去要求低代码平台,忽略其工程属性

  • 将低代码的使用效果等同于“最终系统好不好用”,而非“开发方式是否更可控”

  • 将低代码与 ERP、OA 等产品直接对比,得出错误结论

1.2 低代码并非“新技术”,而是“新一代开发工具形态”

进一步细分“开发工具”这一层,可以发现其本身也经历了多次演进。在早期,开发工具以编程语言 + 编译器为核心,如C和gcc;随后出现了包含了调试器、编译器的集成开发环境以及配套的版本管理工具,如Visual Basic和Visual SourceSafe等;再之后是各类框架,如Web 框架、ORM、前后端组件库等等;以及近年热火的DevOps 工具链、自动化流水线等。这些演进虽然围绕着软件开发全生命周期展开,但规模小且过于分散,开发者需要将其组织使用才能发挥最大价值。


事实上,低代码并没有否定上述任何一类工具,而是将其中一部分能力上移并整合。如将部分中间件能力(如流程引擎、规则引擎、权限体系)内建到平台中;然后将部分框架约定(如 CRUD、页面-服务协作模式)固化为模型;最后将大量重复出现的工程结构,从“代码模板”升级为“平台原生能力”,最终形成一种新的工具形态。


从这个角度看,低代码并不是“写代码更少”,而是通过平台化方式,重新定义哪些内容应该由开发者反复实现,哪些内容应该成为开发工具的内建能力。

1.3 为什么说低代码是一个商业概念

既然低代码在技术上可以被理解为新一代开发工具形态,为什么仍然要强调它首先是一个商业概念?低代码的概念与常见技术概念的最大差异在于其并没有约定其技术实现,属于厂商与市场的交汇处的概念,本质上是一种对软件生产方式的重新命名


事实上,在企业软件领域,类似的命名方式并不罕见:

  • ERP 并不是一种具体技术,而是一类围绕“企业资源计划”的软件系统集合

  • BI 不是算法创新,而是对“数据分析决策支持”能力的整体包装

  • 云计算同样不是单点技术突破,而是对计算资源交付方式的重组

低代码亦是如此。它所指向的并非某一项全新的底层技术,也不是由某一项不可替代的底层技术突破所驱动的,而是对既有软件工程能力的重新组合与重新定价。在传统开发工具体系中编程语言、框架和中间件大多是通用技术,一次研发,多处复用。但是企业为软件开发支付的最大成本,并不在工具本身,而在于长期人力投入,这就导致工具厂商很难直接从提升企业开发效率中获取持续收益,创新意愿不高。低代码改变的,正是这一商业结构。通过将大量工程经验、通用能力和约束机制内建为平台能力,并因此向开发团队持续收取费用。这笔费用可以简单理解为帮助开发团队节省开发费用的“分成”。因此,低代码在市场上的表达,天然带有明显的商业语言特征,如降本增效、提升交付速度、降低对关键人员的依赖等等。这些表述并非空洞宣传,而是对低代码商业价值的直接描述。

1.4 低代码的真实定位:开发工具 × 中间件能力 × 管理实践的融合体

综合来看,可以给低代码一个更贴近工程现实的定位描述:低代码是一类以企业软件为目标场景,将中间件能力、工程规范和开发工具深度融合的平台型开发工具。 它既不是单纯的中间件,也不是传统意义上的 IDE,更不是业务系统本身,而是:

  • 向下吸收中间件的通用能力

  • 向上约束应用系统的结构形态

  • 向开发者提供比传统工具更高层级的抽象

正因为处在这一位置,低代码天然具有明显的商业属性。低代码不是为了展示某项技术有多先进,而是为了重塑企业软件开发的成本曲线与组织方式


理解这一点,才能在后续章节中,正确看待低代码的价值边界与适用条件,而不是陷入“它能不能完全替代编码”这一并不存在的二元问题之中。


第二章 低代码的核心价值主张

在明确了低代码的商业定位后,我们需要关注的是另一个所有商业产品都需要回答的首要问题,企业为什么愿意为低代码买单?要回答这个问题,不能只从开发效率提升、少写代码这样的技术视角出发,而必须回到企业软件的总体投入与产出结构,也就是企业在软件上的“总账”。

2.1 从“买一个系统”到“养一个系统”

在大多数企业的决策语境中,软件首先被当作一种“可以购买或交付的对象”。 无论是立项一个定制开发项目,还是采购一套成品软件,讨论的重心通常集中在几个明确的问题上:多少钱、多久交付、功能是否覆盖需求。在这一阶段,软件的成本看起来是清晰的、可控的,甚至是可以精确比较的。但当系统真正投入使用后,企业很快会发现,最初讨论的那笔钱,只是整个账目中最小、也最容易理解的一部分,属于冰山的一角,那么该如何看清隐藏在水面下的冰山呢?


image

图:企业软件成本构成以不可见的隐形成本为主

2.1.1 从“项目成本”到“生命周期成本”的视角转换

一个典型的企业系统,很少只服务于某一个短期目标。它往往伴随着业务一起运行多年,并不断被调整、扩展和修补。例如,一个最初用于支撑销售流程的系统,可能会逐步承担起渠道管理、价格策略、绩效统计、甚至跨部门协同的职责。在这个过程中,系统并没有被“重新购买”,但围绕它发生的投入却在持续增加。这些投入通常以另一种形式出现:

  • IT 人员不断参与需求澄清、修改和上线

  • 业务人员反复适应系统变化,调整流程

  • 新老系统之间反复做数据对接与口径修正

这些成本不会被标注为“软件费用”,却真实、持续地消耗着企业资源,被称为“隐形成本”。当企业回过头来复盘时,往往会发现:真正昂贵的,并不是当初“买系统”的那一刻,而是之后“养系统”的全过程。


首先,我们要承认有两类场景,软件的隐性成本确实可以忽略。一类是高度标准化、变化极少的系统,例如基础财务核算或人事台账;另一类是目标明确、生命周期极短的临时系统,用完即退役。但在现实中,企业投入最多精力的,恰恰不是这两类系统。真正复杂、也最具价值的,往往是那些与业务流程、组织结构、管理规则深度绑定的系统。这类系统的一个共同特征是:变化是常态,而不是例外。每一次组织调整、策略变化或管理精细化,都会转化为系统层面的修改需求。而正是在这些持续变化中,隐性成本开始占据主导地位。

2.1.2 现有软件生产方式低估了隐性成本

从表面看,项目制开发和采购成品软件是两种完全不同的生产方式,但在“软件总账”上,它们往往走向相似的结果。无论选择哪一条路径,隐性成本都不是偶然产生的,而是被系统性低估了。


在项目制开发模式下,软件被视为一个有明确边界的交付物。需求被尽可能前置定义,目标是在约定时间内完成交付。这种模式在短期内看起来高效,但它隐含的前提是需求在交付后可以长期保持稳定。一旦业务开始变化,系统就不得不通过追加开发、重构或绕行方案来应对。每一次变化,都会重新触发沟通、开发、测试和上线流程,成本随之叠加。而在成品软件采购模式下,问题并没有消失,只是换了一种形式出现。企业在初期节省了开发成本,却在后续不断为“不匹配”付出代价:流程需要向软件妥协,复杂需求只能通过定制或外挂实现;主产品的版本升级与定制开发外挂相互牵制,系统越来越难以演进。

2.1.3 企业软件需要全新的经济模型

很多企业在复盘软件成本时,会将问题归因于这些执行层面的原因,比如项目管理不到位、需求控制不严格、实施经验不足等。但当同样的问题在不同系统、不同团队中反复出现时,就很难再用“执行层面问题”来解释。真正的原因在于,传统路径下的软件生产方式,本质上是为“一次性交付”而设计的,而企业的软件使用方式,却是长期运行与持续演进。当生产模型和使用现实之间存在结构性错位时,账目失控几乎是必然结果。


当企业逐渐意识到在大多数非标准化、非临时的系统中,隐性成本才是真正的主账,问题本身就发生了变化。关注点不再是如何把某一个项目做得更快、更便宜;而是转向如何让系统在长期变化中,保持可控的成本结构。企业需要一个全新的软件生产的经济模型。

2.2 新的软件经济模型:成本导向与成果导向

当企业真正意识到“养系统”的隐性成本才是软件成本的主要组成时,评估软件价值的标准也随之发生了根本变化。企业不再只关心“这个系统多少钱买?多久能上线?功能是否齐全”,而是开始反复追问两个更现实的问题:

  • 这个系统未来还能不能改?改一次要付出多大代价?

  • 这些持续投入,最终是否真的转化成了业务成果?

低代码正是在这一问题转变中,被引入到企业视野中的。

2.2.1 从“控制一次性投入”到“控制变化的长期成本”

在传统的软件经济模型中,成本控制的核心发生在立项和交付阶段。通过压缩预算、缩短工期、限定范围,企业可以在短期内获得一个“看起来可控”的结果。但在以变化为常态的企业环境中,这种控制方式很快失效。系统一旦进入运行阶段,成本不再由采购或委托合同决定,而是由变化的频率与复杂度决定。低代码所代表的新经济模型,首先是一种成本关注点的转移:不再试图把所有成本压缩在第一次交付,而是致力于降低系统在长期演进中的变化成本。这意味着:

  • 一次需求调整不应等价于一次完整项目

  • 小范围业务变化不应引发系统级重构

  • 系统规模扩大,不应必然带来成本失控

当变化的边际成本趋于稳定,企业才能真正“养得起”系统。这正是低代码所强调的成本导向的本质含义。

2.2.2 从“交付功能”到“持续产生成果”

如果说成本导向回答的是“钱会不会越花越多”,那么成果导向关注的则是另一个同样关键的问题,那就是这些在IT领域的持续投入,是否真的转化成了企业的业务能力?在传统模式下,软件成果往往以功能是否交付、项目是否验收来衡量。但在长期运行的企业系统中,这种衡量方式很快失去意义。一个系统即便功能完整,如果无法支持新的业务策略、不能适配组织和流程调整、数据口径长期失真,那么它对企业而言,仍然是低效甚至负担性的存在。


所以,低代码所强调的成果导向,并不是交付速度本身,而是系统是否能够持续、稳定地承载业务目标的变化。在这一视角下,成果不再是一次性的交付结果,而是一种可持续输出的能力:

  • 新的业务规则能否在合理周期内落地

  • 新的业务流程能否被系统自然吸收

  • 新的管理方式能否得到系统支撑

只有当系统能够不断转化业务意图为可运行的系统能力时,投入才真正产生了成果,才能真正落实成果导向

2.2.3 成本导向与成果导向,打造可持续的软件生产方式

在企业实践中,成本导向与成果导向并不是彼此独立的目标。如果系统每一次变化的成本都极高,那么企业必然会减少变化,成果也随之受限;反过来,如果系统能够低成本地适配变化,企业才有空间不断试错、调整和优化,成果才可能持续累积。因此,低代码的商业价值,并不体现在“更便宜”或“更快”这些单点指标上,而体现在:

  • 成本导向:通过控制变化成本,释放组织调整与业务创新的空间

  • 成果导向:通过提升成果转化效率,使长期投入具备可解释性和可预期性

从这一角度看,企业为低代码买单,并不是因为它是一种更先进的开发工具,而是因为低代码提供了一种更符合企业长期运行现实的软件经济模型。在这种模型下,软件不再是一次性项目,而是一种可持续演进的资产,其投入不再主要消耗在重复建设与被动维护上,最终在成本与成果之间重新建立起稳定、可理解、可汇报的关系。当企业发现,低代码能够帮助自己把不可控的隐性成本转化为结构性可控的长期投入,把项目交付结果转化为持续可用的业务能力。那么,为低代码付费,本质上就是在为可持续的软件生产方式买单。这也正是低代码作为一种商业概念,得以成立的根本原因。

2.3 如何看待低代码的工具性带来的终极价值

在前两节中,我们已经将视角从“做一个系统”转向“养一个系统”,并进一步指出低代码的核心价值并不在于某一次开发效率的提升,而在于它是否改变了企业面对变化时的成本结构与成果转化方式。那么,作为一种工具形态的软件,低代码最终为企业带来的究竟是什么?要理解这一点,可以借助一个生活中的类比。


在新能源汽车普及之前,个人出行的选择往往受制于一个明确的“成本—体验”边界:自行车成本极低,但行动半径有限;公共交通成本适中,却在时间与灵活性上受限;私家燃油车体验最佳,却意味着持续、高昂的使用成本。当一次出行的成本明显高于预期收益时,人们往往会选择放弃。结果是并非所有“值得尝试的选择”都会真正发生。新能源汽车并没有创造全新的出行需求,而是通过显著降低使用边际成本,改变了人们的决策方式。当高体验不再伴随高成本,原本被反复权衡、甚至被放弃的选择开始变得“自然发生”。工具本身没有改变目的地,却扩大了人们愿意抵达的范围。


低代码在企业数字化中的作用,与此高度相似。在传统软件生产模式下,企业在面对新的业务想法、管理策略或技术方案时,往往会先进行一次严格的成本评估:是否值得为此启动一个项目?是否要投入新的预算与团队?是否会影响现有系统的稳定性?在这种判断机制下,只有少数被认为足够重要的需求,才能进入项目清单。大量中等强度、试探性或阶段性的业务改进,往往被直接放弃。低代码正是通过降低系统开发与演进的全生命周期成本,改变了“哪些业务行为值得被系统承载”的判断结果。当一次业务规则调整不再等价于一次完整的软件项目、当一次组织变化不再必然引发系统的大规模重构、当试错的成本被控制在可接受范围内时,企业才会更频繁、更主动地将业务意图转化为系统能力。


这正是前文所强调的成果导向,在业务层面的体现:

  • 更多业务想法能够进入系统,而不是停留在口头或文档中

  • 更多管理动作能够被固化执行,而不是依赖个人经验

  • 更多引入新技术的尝试能够被验证,而不是在成本压力下被否决

因此。低代码的终极价值并不体现在工具本身有多先进,而体现在它是否改变了企业对数字化投入的行为模式。当企业不再因为系统成本而压缩业务探索空间,当IT能够成为业务变化的放大器而非约束条件。低代码的价值就从IT层面放大并落实到了业务层面了。


第三章 低代码赛道的分类与价值取向

在明确低代码是一种“重构软件生产经济模型”的商业概念之后,下一步需要回答的问题是:为什么市场上会同时存在多种看似差异巨大的低代码平台?


如果仍然沿用功能多少、能不能写代码、是不是拖拽等技术视角,这一问题往往会被简化为产品能力的强弱之争。但从企业实践看,这种解释并不能帮助企业做出正确选择。更合理的视角,是回到低代码试图解决的根本问题,如何在长期变化中,以可控成本持续产出IT成果、支撑业务发展。为此,低代码概念的提出者Forrester将低代码平台明确区分为两类:

  • LCDP for Business Developers(面向业务开发者的低代码平台)

  • LCDP for Professional Developers(面向专业开发者的低代码平台)

需要强调的是,这里的“业务开发者”与“专业开发者”的差异并不首先体现在软件开发技术能力上,而体现在其在企业组织中的角色定位、责任边界与管理方式上。这一差异,直接决定了两类低代码平台在价值主张上的根本不同。

3.1 LCDP for Business Developers:控制一次性投入成本

面向业务开发者的低代码平台通常是将数据与业务逻辑合一的表单驱动型产品,衍生于ERP、OA中广泛使用的可配置化技术,使用体验类似于成品软件的实施。从市场宣传角度看,大部分表单驱动的低代码开发平台采用了“无代码”的宣传口号(本站部分页面以“无代码”代指“表单驱动的低代码平台”)。


业务开发者指的是不向IT部门负责,但构建软件提供给其他人使用的人员,与Gartner提出的平民开发者概念相同。在企业组织中,业务开发者往往承担的是流程负责人、业务负责人、运营负责人等角色。他们对业务规则、流程细节和管理目标高度熟悉,但并不对系统的长期技术演进负责。所以,此类低代码平台的出发点并不是“如何构建一个长期演进的软件系统”,而是让业务部门在最短路径内,把明确的业务目标转化为可用的系统成果。在这种前提下,软件的价值衡量方式天然偏向于成果导向:

  • 是否解决了当下明确的问题

  • 是否快速支撑了某个管理动作或流程改造

  • 是否在有限时间内产生了可见效果

现实中,这类低代码平台通常通过高度封装的方式,将软件生产过程压缩为一系列可配置的业务动作,使业务人员能够在既定框架内快速产出应用,与ERP、OA等成品软件提供的配置能力类似。从软件经济模型的角度看,这类平台的价值在于以较低的初始投入和组织摩擦成本,快速产生成果


但这种成果导向,本身也意味着边界的存在。当系统开始承载更复杂、跨部门、长期演进的业务规则时,其隐性成本往往会以另一种形式显现出来,例如配置规则逐渐复杂,但缺乏系统化治理手段,可维护性和数据质量风险持续提升;应用数量快速增长,却难以形成统一架构,数据孤岛普遍性存在;成果以“应用数量”累积,但系统整体可持续性下降等。这并非平台能力不足,而是其设计初衷本就聚焦于压缩显性成本,控制一次性投入成本,服务于阶段性成果最大化,而非长期软件资产的持续演进。

3.2 LCDP for Professional Developers:控制变化的长期成本

与此相对,面向专业开发者的低代码平台通常是数据与逻辑完全分离、各自独立的模型驱动型产品,是可视化开发技术发展的产物,体验上承袭了传统软件开发的生命周期,有明确区分的开发工作界面和最终用户使用界面,也被称为“狭义的低代码”。


此类低代码的价值起点并不在于更快产出一个应用,而是在长期变化中控制软件系统的演进成本。与业务开发者的概念相对应,专业开发者并不一定在IT技术上拥有显著优势,但因为其必须向IT部门汇报的管理性质,决定了他们拥有业务开发者无法比拟的学习开发技术和提升可持续性的驱动力。在企业中,专业开发者以及由他们组成的IT团队承担的是系统负责人和技术治理者的角色。他们需要对系统的稳定性、可扩展性、安全性和长期维护成本负责。这意味着,他们衡量软件价值的核心标准,天然偏向于成本导向:

  • 每一次业务变化的边际成本是否可控

  • 系统规模扩大后,复杂度是否线性增长

  • 人员变动是否会导致系统不可维护

因此,这类低代码平台并不试图屏蔽复杂性,而是通过适度的工程抽象,将通用的中间件能力与工程规范内建为平台能力,将重复出现的系统结构固化为模型与约束,将变化的影响范围限制在可治理的边界之内,最终实现将复杂性集中、结构化处理的效果。


在这种模式下,低代码并不是为了减少代码本身,而是将重点放在压缩变化的长期成本,从而实现持续提升IT团队成果产出能力的目标。它通过重构软件生产方式,使系统能够在持续变化中保持结构稳定,从而支撑真正意义上的可持续演进。作为代价,此类低代码平台通常对组织和人员提出了更高的前置要求,可以概括为“四大前提”。

3.2.1 前提一:开发者需要具备持续学习和理解平台抽象的意愿

与面向业务开发者的低代码不同,这类平台并不会把所有复杂性藏起来。相反,它会通过模型、约束、规范和平台机制,将复杂性重新组织并显性化。开发者需要理解这些抽象背后的设计逻辑,才能在变化发生时,正确地使用平台提供的能力,而不是绕开它。这意味着,低代码在这里并不是无需学习的工具,而是一种新的工程语言。如果团队仅将其视为写得更快的开发工具,而不愿投入时间理解其架构思想、运行机制和治理边界,那么平台所承诺的长期成本优势往往无法真正兑现。

3.2.2 前提二:企业需要具备一定程度的技术治理意识和管理机制

由于平台的目标是控制长期演进成本,它往往会引入统一的数据模型、服务边界、权限体系和扩展规范。这些机制并不会自动生效,而是需要通过制度、流程和角色分工来落地,例如:

  • 明确哪些能力应以内建模型实现,哪些可以通过扩展完成

  • 约束跨系统、跨模块的依赖方式,避免隐性耦合

  • 对关键模型和服务的变更建立评审和演进规则

如果企业仍然以“项目交付完成即结束”为主要管理方式,缺乏对系统整体结构的长期治理,那么平台提供的工程抽象反而可能被不断侵蚀,最终退化为另一种形式的快速堆叠软件功能。

3.2.3 前提三:从组织层面看,这类低代码并不适合完全去中心化的开发模式

平台强调结构稳定性和可持续演进,天然需要一部分人对系统整体负责。这要求企业至少在核心系统层面,承认并保留架构责任和平台责任的角色,而不是将所有开发活动完全下沉、完全分散。在一些组织中,如果对统一技术路线和长期架构约束本身存在抵触情绪,那么这类低代码的优势往往难以发挥,甚至会被误解为“限制灵活性”。

3.2.4 前提四:管理层可以接受“初期投入感知更强,但回报周期更长”的模式

相较于以成果导向为核心的低代码,面向专业开发者的低代码在早期阶段未必能显著缩短单个应用的交付周期,其价值更多体现在:

  • 多年运行后系统依然可维护

  • 变化频率提升但成本曲线保持平缓

  • 人员更替对系统影响可控

这要求企业在决策时,能够接受“不是所有价值都立即可见”,并将软件视为一项需要长期经营的资产,而非一次性交付的项目。


正因如此,面向专业开发者的低代码并不是“更高级的低代码”,而是一种以长期成本可控为前提的软件生产方式选择。它适合那些已经意识到隐性成本是软件成本的主要组成、并愿意为可持续演进投入组织能力的企业。

3.3 两类低代码的典型适用边界

在实践中,围绕低代码的争议往往集中在一个表面问题上,即某一类低代码平台能不能支撑复杂系统、核心系统或长期演进的业务。但从软件经济模型的角度看,这个问题本身并不关键。真正重要的不是能不能做,而是值不值得做,即在长期运行和持续变化的前提下,这样做是否仍然具有经济价值。

3.3.1 面向业务开发者低代码的合理边界

面向业务开发者的低代码平台,在以下场景中通常具有清晰且稳定的优势:

  • 业务目标明确,交付周期短

  • 系统生命周期可预期,变化频率有限

  • 主要价值体现在“是否快速落地”,而非“是否长期演进”

在这些条件下,压缩一次性投入成本、快速产生成果是理性的选择。即使后续存在一定程度的隐性成本,其规模和持续时间也通常是可接受的。但当系统开始具备以下特征时,经济模型就会发生变化,典型的场景如下:

  • 系统逐步成为多个部门的协同基础

  • 业务规则持续细化,变化成为常态

  • 数据开始被反复复用,并影响管理决策

此时,原本被压缩的显性成本,往往会以配置复杂度、治理难度和维护负担的形式重新出现。平台并没有失败,只是被使用到了不擅长的领域。

3.3.2 面向专业开发者低代码的适用前提

与之相对,面向专业开发者的低代码平台,适用的前提条件更加明确。此类低代码也并不是适合所有系统,而是更适合以下情况:

  • 系统预期运行周期较长,且不可避免地持续变化

  • 系统结构复杂,涉及跨流程、跨部门或核心数据

  • 企业已经意识到“隐性成本是主账”,并希望对其进行系统性控制

在这些前提下,企业更关心的是随着时间推移,系统是否还能被理解、维护和扩展,而不是某一次交付是否足够快。但如果企业尚未建立基本的技术治理意识,或组织层面对“长期架构约束”缺乏共识,那么即使引入了成本导向的低代码平台,也很难真正发挥其价值,反而可能因前期学习和治理投入,产生“性价比不高”的主观感受。

3.3.3 边界冲突的本质:价值坐标不一致

在实际落地过程中,低代码项目失败的原因,往往并不在于技术能力不足,而在于价值坐标的错位。典型的冲突包括:

  • 用面向业务开发者的低代码,却要承担需要长期演进的系统角色

  • 用面向专业开发者的低代码,解决一次性、短周期的业务问题

  • 在缺乏治理意愿的组织中,引入任何一种旨在“将管理固化为软件”的低代码平台

这些问题表面上看是选型失误,但本质上是没有先明确自己要算的是哪本账。在认识到低代码不是万能解法,而是一种明确立场的选择后,将两类低代码放回到企业软件的总账中,就可以得到一个更冷静、也更有解释力的结论,低代码并不是用来消除所有成本,而是帮助企业在特定场景下,把成本从不可见、不可控,转化为可预期、可管理。选择面向业务开发者的低代码,就是选择优先解决成果的不确定性,“先到咸阳为王上”;选择面向专业开发者的低代码,就是选择优先解决长期成本不确定性,“该省省该花花”。


理解这一边界,低代码就不再是一种模糊的效率工具,而成为企业在软件生产方式上的一次清晰表态。


第四章 低代码的通用能力

在前文中,我们已经从商业定位、经济模型与价值取向的角度,对低代码进行了系统性拆解。接下来将讨论进一步落到工程层面,回答一个更具操作性的问题:无论面向业务开发者还是专业开发者,一款合格的低代码平台,在技术与工程上至少需要具备哪些通用能力?


这里所说的通用能力,并不等同于功能清单,也不是对具体产品形态的描述,而是指那些与平台定位无关、与具体业务无关,但直接决定其工程价值与可持续性的能力基础。这些能力共同构成了低代码平台作为开发工具的下限。


需要强调的是,本章并不试图给出一份评测表或选型清单,而是从软件工程与长期演进的角度,解释这些能力为什么必须存在,以及缺失会导致什么问题,并在必要时给出直观示例。只有理解这些能力背后的逻辑,企业才能根据自身场景,判断某一平台是否真正具备支撑其目标的潜力。

4.1 通用能力的基本划分视角

尽管低代码平台在市场上的呈现形式差异极大,但从工程结构上看,其通用能力大致可以归纳为三大层次:

  1. 可视化开发阶段的建模与表达能力:低代码如何描述业务对象、流程、规则和界面

  2. 运维阶段的运行与治理能力:平台如何支撑系统运行、控制复杂度并保障质量

  3. 编码扩展与演进能力:如何通过开放性应对变化、集成外部系统并持续演进

这三类能力并非彼此独立,而是层层叠加、相互制约。建模能力决定了系统能否被清晰表达,治理能力决定了系统能否长期可控,而扩展能力决定了系统能否在变化中继续存在。


对于面向业务开发者的低代码,这些能力往往以高度封装、强约束的方式呈现;而对于面向专业开发者的低代码,则更多体现为可配置、可组合、可扩展的工程机制。但无论形式如何变化,其底层诉求是一致的。

4.2 建模与表达能力:让复杂业务具备可描述性

4.2.1 统一的数据模型与元数据体系

任何企业系统,最终都围绕数据展开。低代码平台如何以一致、可理解、可演进的方式描述业务数据?一款成熟的低代码平台,在数据模型层面至少需要具备以下能力:

  • 对业务实体、字段、关系进行统一建模

  • 数据定义具备明确的生命周期与变更规则

  • 数据模型不仅服务于存储,还能被页面、流程、权限、接口等能力复用

例如,某制造企业使用具备统一数据模型的低代码平台构建生产管理系统。工单状态被定义为平台级的枚举实体,包含状态值、判定规则等。当需要添加新状态时,开发者只需要:

  • 在数据模型中添加新的枚举值和判定规则

  • 所有引用该模型的页面、逻辑、流程都可以自动感知新状态

  • 开发者可以查询哪些流程节点、逻辑用到了新增的状态

这种方式确保了数据口径的一致性,将变更成本从搜索所有配置并逐个修改降低为在统一模型中定义一次。


面向业务开发者的低代码,通常通过“表单 + 字段”的方式完成数据建模,强调直观性和易理解;而面向专业开发者的低代码,则往往引入更明确的领域模型、实体关系和元数据(如上文中判断客户状态的规则)定义机制,以支撑跨模块、跨系统的复用。

4.2.2 页面与交互模型的结构化表达

页面是用户感知系统的主要入口,也是复杂性最容易失控的地方。低代码平台需要在灵活性与结构性之间做出清晰取舍。通用能力层面的要求并不是“页面能否拖拽”,而是:

  • 页面是否基于可复用的组件模型

  • 页面与数据、逻辑之间是否存在清晰边界

  • 页面结构是否能够被版本管理和审计

例如,某商务服务业公司使用具备结构化页面模型的低代码平台构建理赔系统。平台明确区分:

  • 页面结构:由可复用的UI组件组成,只负责数据展示和用户交互

  • 业务逻辑:封装为独立的服务端逻辑服务,由页面和元素的事件调用,而非直接嵌入

  • 数据绑定:通过声明式配置将页面元素的值、显式状态与从服务端逻辑服务获取到的数据模型关联

当需要调整审批规则时,团队可以直接定位到“审批规则服务”,修改判断逻辑后,所有引用该服务的页面自动生效。页面层不需要任何改动,也不会因为"某个页面忘记更新"而出现不一致。一个常见的反面例子是将页面逻辑大量嵌入在页面、按钮等元素的事件中,字段校验、权限判断、流程跳转混杂在一起。初期开发效率看似很高,但一旦需要修改规则或复用页面结构,开发者往往只能“复制一份再改”,很容易造成疏漏和不一致。


在面向业务开发者的低代码中,这种复杂性通常被平台通过强约束隐藏;而在面向专业开发者的低代码中,平台更倾向于通过组件化、模板化和MVVM(模型-视图模型-视图)等分层模型,让复杂性被显性表达和治理。

4.2.3 业务规则与流程的显性建模

除了数据和界面,企业系统中最核心、也最容易变化的部分,是业务规则与流程。低代码平台如果无法对这部分内容进行显性建模,就很难兑现降低变化成本的承诺。通用能力层面的关键在于:

  • 规则与流程是否可以脱离页面存在

  • 是否支持版本化、条件化和组合式表达

  • 是否能够在不改动大量既有配置的情况下引入新规则

例如,某金融机构使用具备规则引擎的低代码平台构建风控系统。所有业务规则被定义为独立的服务端逻辑:

  • 规则名称:信用评分-收入验证

  • 规则参数:income、age、creditScore

  • 规则输出结果:creditScore

  • 规则条件:income < 5000 AND age < 25

  • 规则动作:creditScore -= 20

当需要临时调整某个规则时(例如疫情期间放宽收入要求),只需要修改规则的条件部分即可。开发团队可以通过审查该服务端逻辑的变更历史,追溯任何时间点的规则内容,满足审计要求。


业务规则建模是面向专业开发者和面向业务开发者的低代码平台最显著的差异化特征。前者倾向于提供清晰的前后端逻辑编排机制,确保安全边界和事务性的同时,帮助开发者建立起团队内部开发规范;后者则倾向于尽可能不提供类似功能,以降低非IT技术人员的学习成本。

4.3 运行与治理能力:让系统在长期运行中保持可控

4.3.1 运行时架构与隔离机制

低代码平台并不是设计工具(Designer),而是以运行时(Runtime)的形式承载开发者构建的业务软件。其运行时架构直接决定了系统的稳定性与可扩展性。在运行时架构层面,至少应包括应用级、模块级的运行隔离,对资源使用的基本控制与限制,对异常和错误的统一处理机制等能力。


例如,某制造企业使用具备运行隔离能力的低代码平台,每个业务系统作为独立的进程运行:

  • 每个应用有独立的资源配额(CPU、内存、数据库连接数)

  • 应用之间通过标准的WebAPI通信,而非共享底层资源

  • 某个应用的异常被限制在该应用边界的内,不会传播到其他应用

当生产管理系统因为一个错误导致内存泄漏时,低代码平台自动检测到该应用的内存使用超限,触发应用重启,恢复正常运行。财务和人事等系统的运行基本不受影响。运行时隔离不仅提升了稳定性,也让故障的影响范围变得可控和可预测。


面向业务开发者的低代码平台通常不会显式提供该能力,而是倾向于将其内置于平台中。面向专业开发者的低代码平台在此基础上,通过业务规则和逻辑的编排机制,将异常处理机制开放给开发者,以便于针对业务特点设计不同的处理策略。

4.3.2 权限、安全与审计能力

随着系统规模扩大,权限问题往往从功能可用性问题演变为组织治理问题。低代码平台需要提供的,不只是简单的角色配置,而是一套可持续的安全与审计机制:

  • 基于角色、数据范围、操作类型的多维权限控制

  • 对关键操作和配置变更的审计与追溯

  • 与企业既有身份体系的对接能力

例如,某金融机构使用具备多维权限能力和高度定制化的服务端逻辑的低代码平台构建客户管理系统,支持了以下特性:

  • 功能权限:通过权限配置,指定谁可以访问哪些菜单和操作

  • 数据权限:通过权限配置,指定谁可以看到哪些数据范围(按部门、区域、客户等级过滤)

  • 字段权限:通过自定义的服务端逻辑,敏感字段(如身份证号、银行卡号)做到脱敏展示

  • 操作审计:通过自定义的服务端逻辑,所有敏感数据的访问都被记录到数据库,包括访问人、访问时间、访问内容

当监管部门要求提供”过去一年内所有访问VIP客户信息的记录“时,系统可以直接生成完整的审计报告,包括每次访问的操作人、时间、访问的具体字段,满足合规要求。


在面向业务开发者的低代码中,权限模型通常被简化为类似OA软件那种基于组织结构的可视化配置;而在面向专业开发者的低代码中,权限往往被视为系统架构的一部分,与数据模型、服务端逻辑的边界紧密结合,允许开发者自行定义权限控制与用户授权管理功能,以适配不同的管理和操作习惯要求。

4.3.3 运维、监控与问题定位能力

当低代码平台承载的是生产系统时,“出了问题怎么办”就不再是次要问题。通用能力层面,平台至少应支持以下项目,提升系统的整体可观测性:

  • 运行状态与性能指标的可观测性

  • 错误日志与调用链路的定位能力

  • 对问题影响范围的快速判断

例如,某物流企业使用具备完善监控能力的低代码平台构建运输管理系统。平台提供:

  • 结构化日志:每条日志包含业务上下文(订单号、车辆ID、操作人)

  • 性能指标:实时监控关键服务端逻辑的响应时间、吞吐量、错误率

  • 告警机制:当某个逻辑的错误率或响应时间超过阈值时,自动发送告警

当某次系统异常发生时,监控系统自动发现订单创建接口的错误率从0%跳升到30%、“库存查询服务”响应超时;开发者通过日志过滤,快速确定影响范围:过去10分钟内有23个订单受影响;问题定位和影响评估总共耗时不到5分钟。可观测性不仅提升了问题定位效率,更重要的是让团队能够主动发现问题(通过监控告警),而不是被动等待用户投诉。


如果平台只关注如何开发,而忽略如何运行,那么一旦系统进入高频使用阶段,IT团队将很难对其负责,低代码反而会成为新的风险源。这部分能力的开放性较强,低代码平台可以选择自行提供相关功能,或集成其他成熟的方案,如集成ELK方案实现日志记录与查询来实现。

4.4 扩展与演进能力:为变化预留工程空间

4.4.1 标准化的扩展机制

无论平台封装得多么完善,都无法预见所有业务场景。这种覆盖不足可能源于业务需求本身的多样性,更大概率源于新的数字化技术的引进,比如近期热火的生成式人工智能。因此,低代码平台必须为超出既有模型的需求提供扩展路径,让低代码构建的软件不会卡在最后一公里。基础的扩展路径并不是简单的开放编程接口,而是需要包含以下:

  • 扩展是否有明确的入口和规范

  • 扩展代码是否与平台升级解耦

  • 扩展能力是否具备可测试性和可治理性

例如,某制造企业在使用低代码平台构建客户管理系统时,遇到了类似的积分计算复杂场景。但由于平台提供了明确的服务端逻辑扩展点,扩展逻辑被封装为标准化的插件,有明确的版本号(如1.2.3),将插件在平台中注册,并声明依赖的平台版本(如"dependenceVersion": "11.0.4.0")。之后,当开发者尝试在其他版本的低代码平台上使用该插件时,插件声明的依赖约束触发兼容性警告,避免了未经测试的插件带来的质量风险。这种设计让对平台的扩展本身成为被充分设计过的平台能力,而不是绕过平台的补丁,避免了对平台本身工程价值的侵蚀。


比较反直觉的是,这部分能力与低代码开发者的关系较弱,而是与为低代码平台做扩展开发的编码开发人员紧密相关,所以面向专业开发者的低代码平台与面向业务开发者的低代码平台几乎没有差异。

4.4.2 与外部系统的集成能力

企业系统从来不是孤立存在的,而是企业IT生态中的一环。低代码平台需要具备与外部系统、服务和数据源进行集成的基础能力,包括:

  • 对标准接口协议的支持

  • 对异构数据源的访问能力

  • 对调用失败、超时等情况的处理机制

例如,某金融机构使用具备完善集成能力的低代码平台构建客户服务门户,需要对接征信系统、核心银行系统、反洗钱系统等多个外部系统。平台的集成能力包括:

  • 多协议支持:原生支持REST/SOAP/gRPC,可以直接调用不同协议的外部服务

  • 数据源适配:访问Oracle/MySQL/PostgreSQL等异构数据库,无需数据同步

  • 调用治理:提供超时控制、重试策略、熔断机制、幂等性保证等企业级能力

  • 可观测性:所有外部调用自动记录日志,生成调用链追踪,集成到统一监控平台

当征信接口偶尔出现超时时,平台的WebAPI调用熔断机制自动降级,使用缓存的历史征信数据,监控系统发送告警,但不影响用户操作。待征信接口恢复后,自动切回正常调用。这种方式不仅降低了集成成本,更重要的是让外部依赖变得可控和可观测。


这里的关键并不在于能集成多少种系统,而在于集成方式是否具备一致性和可维护性。与扩展机制类似,这部分能力在面向专业开发者的低代码平台与面向业务开发者的低代码平台间的差异也较小,因为集成的复杂度主要来自外部系统本身,而非平台的使用者。

4.4.3 平台自身的可演进性

最后,一个经常被忽视但极其重要的问题是平台本身能否演进?在通用能力层面,可持续演进意味着:

  • 平台升级是否会破坏既有应用

  • 平台能力演进是否有清晰的版本策略

  • 用户是否可以逐步迁移,而非一次性重构

例如,某商业服务企业使用具备良好演进能力的低代码平台构建了订单、配送、客服等多个系统。平台采用长期支持版本(LTS)策略:

  • 版本兼容承诺:平台升级时,明确区分兼容性升级(应用无需修改)和破坏性升级(需要适配)

  • 渐进式迁移:允许同一个平台上的不同应用运行在不同版本的运行时上,按业务优先级逐步升级

  • 自动化适配工具:对于必须的破坏性变更,平台提供自动化迁移工具,将90%以上的适配工作自动完成

当平台从10.x升级到11.x时,订单系统作为核心业务,希望引入11.0的生成式AI功能,优先升级适配新版本(按手册操作,耗时1周);配送和客服系统暂无新功能规划,继续运行在10.x版本上。这种方式让企业可以根据自己的节奏演进,而不是被平台升级绑架。更重要的是,升级成本是可预期的,不会出现“升级等于重写”的情况。如果平台自身无法平稳演进,那么其所承诺的“降低长期成本”将无法成立。

4.5 面向业务开发者与专业开发者低代码能力侧重点对比

低代码平台的通用能力,决定的并不是它“最多能做到什么”,而是它“至少不应该失控到什么程度”。在企业实践中,很多问题并非源于平台功能不足,而是源于其在通用能力层面的缺失,使得系统在规模扩大和时间推移后迅速失去可控性。


理解这些通用能力的意义,并不是为了追求功能齐全,而是为了帮助企业在选型和落地时,判断某一平台是否真的具备支撑其目标场景的工程基础。只有在这一基础之上,低代码才能真正成为一种可持续的软件生产方式,而不仅仅是一次性的效率工具。


在具备上述通用能力的前提下,不同定位的低代码平台,会在实现方式和侧重点上形成明显差异。下表从工程视角,对两类低代码在通用能力上的典型差异进行总结:

维度

面向业务开发者的低代码

面向专业开发者的低代码

核心目标

快速产生成果

控制长期演进成本

数据建模

表单驱动,强调直观性

领域模型驱动,强调一致性

页面表达

强封装、低自由度

组件化、结构化

业务规则

内嵌于配置流程中

显性规则、逻辑与流程建模

扩展方式

有限扩展,优先配置

标准化扩展,版本可控

治理与运维

以平台代管为主

强调IT治理与可观测性

适用系统

短周期、边缘系统

长周期、核心与中枢系统

需要再次强调的是,这种差异并不意味着某一类平台更高级或更先进。它们只是针对不同的价值坐标,在通用能力的实现方式上做出了不同取舍。


第五章 低代码的能力边界

低代码并非一种万能开发方式。它的价值并不体现在覆盖所有软件形态,而体现在在特定复杂度区间内,以更高层次的抽象显著提升系统交付效率。因此,讨论低代码是否适合某一场景,必须同时回答两个问题:低到什么程度不值得使用低代码?高到什么程度低代码开始失效?


本章将从低代码的下限上限出发,结合不同目标人群的低代码形态,明确低代码的合理能力边界,并给出可用于判断的分析框架。

5.1 低代码的下限

首先我们需要明确的是,低代码是软件开发工具,如果应用场景足够通用化,可以借助成品软件来覆盖,通常不推荐任何形式的定制开发。非通用场景的话,则需要根据其特点来做判断,如果其价值和要求足够低,就不应使用低代码,甚至不应该定制一个软件?

5.1.1 下限的本质:是否需要定制应用软件

低代码的核心价值,在于帮助开发者快速构建可运行、可演进、可维护的应用系统。当需求尚未达到系统化的程度时,引入低代码反而会带来额外成本。


通常而言,如果一个需求满足以下大部分特征,就低于低代码的适用下限:

  • 不需要稳定的数据模型与持久化存储

  • 不涉及多角色、多权限或明确的业务边界

  • 不存在清晰的业务流程或状态变化

  • 不需要与其他系统进行接口级集成

  • 不具备长期演进和版本管理的必要性

例如,某市场部门需要统计本季度的客户反馈情况。需求很简单:通过电话+微信收集20个客户的意见,按满意度分类,生成一份汇总报告。如果使用低代码平台,开发者需要做以下工作,在不考虑部署和运维成本的前提下,整个过程可能需要半天到一天:

  1. 需要定义“客户反馈”实体,包含字段、类型、约束

  2. 需要创建录入页面,配置字段显示和校验规则

  3. 需要设计统计逻辑,配置分组和聚合规则

  4. 需要生成报表模板,调整格式和样式

而如果使用Excel,30分钟以内就可以完成:

  1. 打开一个空白表格,输入表头

  2. 直接录入20条数据

  3. 使用透视表或筛选功能快速统计

  4. 复制到Word调整格式

这个案例的关键在于数据量小、使用周期短、不需要后续演进。低代码的建模和配置成本,无法被价值抵消。那么该需求本质上仍停留在工具使用阶段,而非系统构建阶段,低于低代码的适用下限。接下来我们将以常见的工具为标定基准,建立对下限的直观认识。

5.1.2 下限工具标定(一):办公软件(Excel 等)

以 Excel、Word、PowerPoint 为代表的办公软件,解决的是以人为中心的数据处理与表达问题:

  • 数据结构松散,规则往往隐含在人工操作中

  • 缺乏明确的业务模型与系统边界

  • 结果通常一次性或短周期使用

  • 不具备真正意义上的运行时与权限体系

例如,某企业财务部门每年12月编制下一年度预算。在初始阶段,这个场景的特点如下:

  • 规则隐含在人工判断中,如部门A通常申请过高,需要先砍30%;部门B属于下一财年的重点业务,预算需要尽量保证等

  • 数据结构每年可能微调,如增加新的预算科目,所以这个工作的产出数据一年只做一次,做完归档即可

这类场景中,问题的复杂度尚不足以支撑一个定制化软件的存在。若此时使用低代码,本质上是在用系统开发工具解决办公协作问题,其建模、部署和维护成本难以被价值抵消。


但是,当上述预算编制场景出现以下变化时,可以考虑低代码:

  • 预算执行需要按月跟踪,数据需要持续维护和对比

  • 不同角色对数据的可见性有严格要求,即部门只能看自己的,财务看全部

  • 预算申请和调整有明确的规则、需要走正式审批流程,有清晰的状态和记录

  • 预算数据需要与ERP、财务系统集成,自动对比实际支出

此时,系统化的价值开始超过开发成本,低代码成为合理选择。

5.1.3 下限工具标定(二):互联网轻工具(表单工具、在线问卷等)

问卷工具、在线表单、简单的工单系统等,通常已经具备基础的、单表的结构化数据以及固定模板下的简单流程,部分平台还预置有基础的数据采集与导出能力,其共同特征在于:

  • 数据模型极为简单,且不可演进

  • 流程与规则高度固化,扩展能力受限

  • 数据难以直接作为后续业务系统的输入

例如,某HR部门需要每季度做一次员工满意度调查。使用问卷星或金数据快速创建包含10-15个问题的问卷,然后通过链接或二维码分发给全体员工,平台自动收集数据、生成统计图表。这个场景的特点如下:

  • 数据结构固定(问卷题目和选项)

  • 没有业务流程(填完即结束)

  • 数据用于分析,不驱动后续系统

  • 每次调查相对独立

当数据仅用于统计、导出或一次性分析,而不直接驱动业务运行时,这类工具仍处于低代码下限之下。但是当调查场景演变为以下情况时,低代码开始具备价值:

  • 调查结果需要触发后续动作(得低分的部门或小组自动进入改进计划流程)

  • 数据需要与员工档案、绩效系统关联

  • 需要支持多轮调查、对比分析、趋势跟踪

  • 不同角色对调查结果有不同的访问权限和操作权限

此时,系统化管理的需求超过了简单表单的能力边界。此时,引入低代码构建一个基于员工满意度反馈的评估与提升软件就值得提上IT部门的日程。

5.1.4 下限工具标定(三):通用 AI 工具(如豆包、ChatGPT等)

随着2022年ChatGPT的热火出圈,类似的通用 AI 工具蓬勃发展,进入了更多企业的日常。此类工具的价值集中在即时生成能力,但其并不具备软件的构建能力,业务像软件一样为企业提供可管控的服务,难以形成可维护、可复用的系统资产,具体表现如下:

  • 不具备稳定的数据模型

  • 不具备确定性的业务语义

  • 不存在可控的执行路径

例如,某电商运营人员需要为新品撰写推广文案。使用AI工具,基于输入产品特点和目标人群,自动生成多个版本的文案,经人工筛选和微调和用于投放广告。这个场景的特点如下:

  • 每次生成的内容都是一次性的

  • 没有数据持久化需求

  • 没有业务流程和状态管理

  • 输出结果不驱动其他系统

当生成工作独立于业务流程,仅为人工提供基础的参考信息时,采用低代码构建一个AI智能体会显得“杀鸡用牛刀”。但是当文案生成场景演变为以下情况时,低代码开始具备价值:

  • 需要建立"文案素材库",按产品类型、投放渠道分类管理

  • 生成的文案需要走审批流程,有明确的状态(待审、已批准、已投放)

  • 需要跟踪文案的投放效果,与投放系统、数据分析系统集成

  • 需要沉淀"好文案"的模板和规律,形成企业知识资产

此时,系统化管理和资产沉淀的价值,超过了纯工具使用的价值。

5.1.5 低代码的下限:工具 vs 软件系统

低代码的下限,本质上是“是否需要系统化管理”的边界。判断标准可以归纳为:

  • 数据是否需要长期维护?一次性使用 vs 持续演进

  • 是否存在明确的业务流程?人工操作 vs 系统驱动

  • 是否需要多角色协作?个人工具 vs 组织系统

  • 数据是否需要与其他系统集成?孤立使用 vs 生态协同

当这些问题的答案从“否”变为“是”时,就是从工具跃迁到系统,进入低代码适用区间的时刻。

5.2 低代码的上限

当应用场景上升到需要构建软件系统时,企业便可以采用低代码执行构建,但当场景的技术性要求持续提升到某个奇点后,低代码带来的优势开始被其自身的特性抵减,直到低代码开发的方式让位于传统编码开发。


值得特别注意的是,企业软件通常有多个相对独立的模块构成,为不同的模块采用不同的开发方式、语言和技术栈是非常常见的做法。在项目实践中,如果您需要开发的软件包含下面讲到的超出上限的场景,最常规的做法并不是直接放弃低代码开发,而是尝试将超出上限的部分抽出为独立的模块,使用传统开发方式构建,再与低代码构建的其他模块通过WebAPI等方式集成,从而达成降低总体成本的目标。


image

图:采用低代码+传统开发的混合方式构建的智能化项目架构示意图

5.2.1 上限的本质:抽象是否开始限制系统表达能力

低代码通过抽象隐藏复杂性,以换取开发效率。但当系统复杂度主要来源于技术机制本身而非业务规则时,这种抽象将不可避免地成为约束。典型的上限信号包括:

  • 需要高度定制的底层技术架构

  • 对性能、并发或资源使用存在极端要求

  • 需要直接控制协议、运行时或系统资源

  • 业务变化频繁突破平台既有抽象模型

  • 平台生成机制成为主要设计限制因素

当这些特征成为系统的主要矛盾时,低代码的效率优势将迅速下降。

5.2.2 超出上限的信号

5.2.2.1 信号一:需要定制底层架构

如某金融科技公司开发风控引擎,核心需求包括:

  • 每秒处理10万笔交易的实时风险评估

  • 支持动态加载和卸载规则模型,无需重启服务

  • 使用自定义的内存数据结构优化计算性能

  • 需要精确控制线程池、缓存策略和GC行为

在这种场景下,低代码的抽象层成为了性能和灵活性的瓶颈。团队需要的是完全控制底层实现的能力,而这正是低代码要隐藏的部分。

5.2.2.2 信号二:平台抽象模型无法表达业务

某制造企业开发生产排程系统,核心逻辑包括:

  • 基于遗传算法的最优排程计算

  • 考虑设备并行、工序依赖、资源约束的复杂约束求解

  • 需要自定义的图形化排程编辑器

  • 实时响应人工调整,重新计算影响

此时,团队花费大量时间绕过平台的限制,而不是利用平台的能力。低代码反而成为了开发效率的阻碍。

5.2.3 超出上限的典型系统类型

基于过往十年低代码的实践,下列场景属于超出上限的典型,默认情况下不推荐采用低代码技术构建:

5.2.3.1 类型一:基础设施型软件

如数据库管理系统、消息队列、分布式调度系统、容器编排平台等。


做一个思维实验,为什么不用低代码开发Redis?假设要开发一个类似Redis的内存数据库:

  • 核心价值在于数据结构设计(如跳表、压缩列表)和内存管理

  • 需要精确控制网络协议(RESP协议的解析和序列化)

  • 性能优化依赖于对操作系统和硬件的深入理解

  • 需要实现持久化、主从复制、集群等底层机制

这些需求的共同特点是:复杂度集中在技术机制本身,而非业务规则。低代码的业务建模能力在此毫无用武之地,反而其抽象层会严重限制性能和灵活性。

5.2.3.2 类型二:高度工程化的通用产品

如通用 SaaS 平台、开发工具链、低代码平台本身等。


再做一个思维实验,为什么不用低代码A来开发低代码B?假设要开发一个新的低代码平台:

  • 需要设计元模型系统(如何定义实体、字段、关系)

  • 需要开发可视化设计器(拖拽、布局、属性配置)

  • 需要实现代码生成引擎或解释执行引擎

  • 需要构建插件体系、版本管理、权限隔离等平台级能力

这类系统的复杂度在于:

  • 非功能性需求占主导:性能、扩展性、兼容性比功能实现更重要

  • 长期技术演进:需要不断适配新技术栈、新标准

  • 生态兼容性:需要与大量外部工具、框架集成

低代码的价值主张是快速构建业务系统,但这类系统的核心并不是业务,而是技术产品。使用低代码A来开发低代码B,相当于用“业务建模工具”来开发“技术产品”,南辕北辙。

5.2.3.3 类型三:算法密集型系统

如推荐引擎、图像识别、自然语言处理等AI/ML系统。


例如,某视频平台需要开发个性化推荐系统:

  • 核心是协同过滤、深度学习模型的训练和推理

  • 需要处理TB级用户行为数据,进行特征工程

  • 需要A/B测试框架,实时评估推荐效果

  • 需要与Spark、TensorFlow等框架深度集成

低代码平台可以做什么?

  • 可以快速搭建“推荐结果的展示页面”

  • 可以配置”推荐内容的审核流程“

  • 可以开发”推荐效果的报表统计“

低代码平台做不了什么?

  • 无法表达推荐算法本身(这需要Python/Scala + ML框架)

  • 无法优化大规模数据处理的性能

  • 无法灵活调整模型训练的pipeline

这个案例说明,低代码可以处理推荐系统的业务外围,但无法触及其技术核心。如果核心价值在算法,低代码只能做配角。

5.2.4 上限的灰色地带:可以用,但不建议用

有些场景理论上可以用低代码实现,但实际投入产出比很低:

5.2.4.1 场景一:需要大量定制UI的系统

如设计工具、游戏、多媒体编辑器等。

  • 低代码的页面组件通常是通用型的(表单、表格、图表)

  • 定制复杂交互需要大量前端代码,抵消了低代码的价值

  • 最终可能90%是代码,10%是可视化

5.2.4.2 场景二:性能敏感的高并发系统

如秒杀系统、实时交易系统、IoT数据采集平台等。

  • 低代码的运行时有额外的抽象层开销

  • 性能优化空间受限于平台设计

  • 关键路径可能需要绕过低代码用原生代码实现

这类场景的判断标准是如果低代码带来的开发效率提升,无法弥补其在性能、灵活性上的损失,就不应使用。

5.3 不同类型低代码的能力区间差异

考虑到低代码存在两个差异化较强的赛道,面向业务开发者的低代码和面向专业开发者的低代码。两者所擅长的应用场景显然是不同的。低代码并不是“替代编程”或“替代OA”,而是在特定复杂度区间内,以更高层次抽象提升系统交付效率的一种工程方法。明确这一能力边界,是正确评估、选型和使用低代码平台的前提。

5.3.1 面向业务开发者的低代码

此类低代码以降低使用门槛为核心目标,通常会强预置能力、弱扩展能力,构建时以页面和流程配置为中心,尽量避免让用户构建前后端逻辑和数据模型。其适用区间相对有限:

  • 下限:高于办公软件和轻量互联网工具(需要有基本的系统化需求)

  • 上限:止步于中等复杂度的部门级应用(业务规则不超过平台预置能力)

典型适用场景:

  • 部门级的审批流程系统,如请假、报销、采购申请

  • 简单的数据采集和统计系统,如巡检记录、设备台账

  • 轻量级的客户管理或项目跟踪工具

快速触及上限的场景:

  • 需要复杂的权限控制,如数据范围权限、字段级权限

  • 需要与多个外部系统深度集成

  • 业务规则频繁变化,且超出平台预置的规则引擎能力

  • 需要定制化的UI交互或报表展示

一旦需求进入复杂业务规则或深度系统集成阶段,极易触及能力上限。此时的典型现象是:开发者花费大量时间研究如何绕过平台限制,而不是利用平台快速实现功能。

5.3.2 面向专业开发者的低代码

面向专业开发者的低代码,关注的是工程效率而非”零代码“体验,通常有明确的系统架构与边界以及可管控的代码扩展路径,开发体验上提供前后端分离的能力,支持复杂业务建模与系统集成。这导致其能力上限显著高于业务型低代码:

  • 下限:与业务型低代码类似(需要系统化需求)

  • 上限:可作为企业核心系统的实现方式,但止步于对抽象层要求更严格的系统

典型适用场景:

  • 企业级的业务中台,如订单中心、客户中心、商品中心

  • 复杂的行业应用,如供应链管理、生产管理

  • 需要长期演进的内部管理系统如HR、财务、项目管理

仍然超出上限的场景:

  • 基础设施型软件,如数据库、消息队列、调度系统

  • 算法密集型系统,如推荐引擎、风控模型、图像识别

  • 需要极致性能优化的系统,如秒杀、高频交易、实时流处理

关键区别在于:面向专业开发者的低代码,将能力上限从”平台预置功能的边界“,扩展到了”平台抽象模型的边界“。通过开放的扩展机制和代码能力,显著拓宽了适用范围,但仍然无法突破抽象层本身的限制。

5.4 低代码能力边界判断的实用原则

在不投入资源进行PoC(概念原型)验证前,我们可以通过以下问题快速判断是否适合低代码:

  1. 是否需要系统化?数据需要长期维护?有明确业务流程?→ 是则考虑低代码

  2. 复杂度在哪里?在业务规则还是在技术机制?→ 前者适合低代码,后者不适合

  3. 平台能覆盖多少?核心功能是否可以用平台能力实现?→ 覆盖度低于60%不建议用

  4. 扩展成本如何?超出平台能力的部分,扩展成本是否可控?→ 不可控则不适合

这些问题的答案,决定了低代码是效率工具还是包袱。明确边界,才能让低代码发挥真正的价值。

总结

低代码并不是一个可以用一句话定义清楚的技术名词,而是一组围绕企业软件现实约束逐步演进的工程实践。从商业角度看,它为软件开发提供了一种新的价值叙事;从工程角度看,它通过提升抽象层级、集中通用复杂度,改善了企业软件的可持续交付能力。


理解低代码的关键,不在于纠结“低代码是不是未来”,而在于判断在特定企业、特定阶段、特定系统中,它是否能以可控的方式降低长期成本。