大模型编码“吊打“低代码的基本逻辑

boyanx2周前技术教程4

低代码平台曾像自助火锅拯救厨房小白一样解救过许多人,比如把300行CRUD代码压缩成拖拽3个组件(附带5个隐藏bug),或者让产品经理也能亲手实现"五彩斑斓的黑"的UI设计,以及用流程图替代了祖传的意大利面条式代码。传言某CTO曾扬言:"我们用低代码3天就完成了ERP系统改造!"(绩效又有了)

然而,当低代码还在用乐高积木搭房子时,大模型编码已经掏出3D打印机开始造电梯了。

究其本质上来说,大模型开发(如Copilot、Cursor、Codex等工具)与低代码平台的竞争本质上都是“降低软件开发门槛”这一目标。

ai-bot.cn/favorites/a…

低代码工具常常依赖于对“已知”的封装和“可视化”的引导,大模型却可以打破这些局限,深入到代码的最深层次,真正实现“理解”与“创造”。

举一个简单的栗子

在低代码平台上,通过拖拽组件来实现功能。假设低代码平台提供了“表单”组件、“输入框”组件、以及“提交按钮”组件,通常这样构建一个简单的注册表单:

1、拖拽一个“表单”组件到页面中。

2、拖拽两个“输入框”组件到表单中,分别命名为“用户名”和“密码”。

3、拖拽一个“提交按钮”组件到表单下方。

4、配置每个组件的属性,如绑定输入框与表单数据。

5、配置提交按钮的操作逻辑:当点击按钮时,提交表单数据。

代码看起来可能是这样子的:


const userForm = new Form();
const usernameInput = new InputField({ name: 'username', placeholder: 'Enter username' });
const passwordInput = new InputField({ name: 'password', placeholder: 'Enter password' });
const submitButton = new Button({ label: 'Submit', onClick: handleSubmit });

userForm.addComponent(usernameInput);
userForm.addComponent(passwordInput);
userForm.addComponent(submitButton);

function handleSubmit() {
  const data = userForm.getData();
  api.submitRegistration(data);
}

这样,虽然看起来无需手动编写复杂的前端代码,仅仅通过组件拖拽完成表单构建。

但,低代码平台的最大问题是:它对灵活性和自定义的限制。例如,如果要实现复杂的业务验证、数据加密、接口调用等,需要额外手动处理。

对于大模型来说,只需简单地描述需求,模型即可生成代码并对其进行优化。仍然以这个“用户注册”功能来举例:

Prompt:“实现一个包含用户名、密码输入框和提交按钮的注册表单,提交后数据要进行验证,并调用/api/register接口。”

劈里啪啦,一顿输出,代码有了:


import React, { useState } from 'react';

function UserRegistration() {
  const [username, setUsername] = useState('');
  const [password, setPassword] = useState('');
  const [error, setError] = useState('');

  const handleSubmit = async () => {
    if (!username || !password) {
      setError('Username and password are required.');
      return;
    }

    const response = await fetch('/api/register', {
      method: 'POST',
      headers: { 'Content-Type': 'application/json' },
      body: JSON.stringify({ username, password }),
    });

    const result = await response.json();
    if (response.ok) {
      alert('Registration successful');
    } else {
      setError(result.message || 'Registration failed');
    }
  };

  return (
    <div>
      <h2>Register</h2>
      <input
        type="text"
        placeholder="Enter username"
        value={username}
        onChange={(e) => setUsername(e.target.value)}
      />
      <input
        type="password"
        placeholder="Enter password"
        value={password}
        onChange={(e) => setPassword(e.target.value)}
      />
      {error && <p style={{ color: 'red' }}>{error}</p>}
      <button onClick={handleSubmit}>Submit</button>
    </div>
  );
}

export default UserRegistration;

大模型不仅生成UI部分,还自动加入用户输入验证、错误处理、以及与后端API的交互逻辑,代码结构生成清晰、可维护。如果想加入更多复杂的验证逻辑,可以追加描述直接修改代码。

对比之下,低代码平台依赖的更多是“模板化”和“规则化”,而大模型则是在更高层次上帮助开发者打破传统的开发瓶颈,实现自动化、智能化的全新开发体验。

这简直就是降维打击!

未来的编程高手,是懂玄学的AI饲养员,不过建议各位道友且行且珍惜 —— 等AI学会自己写prompt的时候(现在的不断反思,就有这样的趋势),我们可能真要考虑转行黄袍加身了。

相关文章

看完这些奇葩代码,我突然觉得自己的编程水平好像还不错

临近年末,小智身边的不少开发者忙碌了起来。吃午饭的时候,研发组的鹏哥就在一旁大吐苦水。“当初刚接手这个项目的时候就知道它是个坑,这都跟了大半年了,才稍微像样了些。现在加班加点,只希望不要拖到春节后··...

图神经网络版本的Kolmogorov Arnold(KAN)代码实现和效果对比

本文约4600字,建议阅读10分钟本文介绍了图神经网络版本的对比。Kolmogorov Arnold Networks (KAN)最近作为MLP的替代而流行起来,KANs使用Kolmogorov-Ar...

AI 代码生成工具横向对比(转载 CSDN)

ChatGPT 的出现,引领了科技公司追逐 AI 的浪潮。相比初代 GPT-3,最新基于 GPT 3.5 的模型之所以受到更加广泛的关注,主要原因之一便是它在加入了代码作为训练数据后,彻底颠覆了传统模...

开源可视化工具对比:JimuReport VS DataEase

在当今数据驱动的时代,高效的数据可视化工具成为企业洞察业务、做出决策的关键利器。那对于企业来讲如何选择BI产品呢?在开源可视化工具的领域中,JimuReport和DataEase 以其独特的优势脱颖而...

改改Python代码,运行速度还能提6万倍,Science:先别想摩尔定律了

机器之心报道机器之心编辑部如果摩尔定律注定终结,人类的算力会被「锁死」吗?MIT、英伟达、微软研究者合著的一篇 Science 论文告诉我们:不会。这份最新研究指出,在后摩尔定律时代,人类所获得的的算...

和无用代码说再见!阿里文娱无损代码覆盖率统计方案

作者 | 阿里巴巴文娱高级无线开发工程师 孙珑达责编 | 屠敏背景为了适应产品的快速迭代,通常大量的研发资源会投入在新功能的开发上,而针对无用功能的治理却很少被关注。随着时间的推移,线上应用会积累大量...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。