AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


代码是被 Cursor 写出来的还是生长出来的
发布日期:2024-12-26 07:48:40 浏览次数: 1541 来源:大铭本铭


最近在做《生财有术》的 Cursor 教练,很多同学都是从产品经理、运营等各种工种开始写代码。这时候大部分人都是让Cursor 进行开发,然后一路 Apply All 就成功的开发出来一个产品了。这就是典型的“写代码”

而真的编程,一定是在已有的基础上一个一个功能添加,然后代码就生长起来了

当最初被写出来的代码需要增加功能时,自然也要从写代码转变为生成代码

和 AI 的协同关系

我认为人和 AI 的协同关系如下

  1. 人是需求方,Cursor 是外包团队。编码工作,Cursor 主导,听 Cursor 的
  2. 人和 Cursor 是结对编程,编码工作人和 Cursor 主导
  3. 长期维护、添加功能,人主导,Cursor 是工具

最初阶段,人提需求 Cursor 外包

最初,我们希望 Cursor 或AI工具能够生成所有代码。我们作为需求方,与AI编程工具的关系就像是与一个外包团队合作。这个外包团队根据我们的需求生成代码,而具体生成了什么,甚至使用了什么语言,我们并不清楚。

在使用外包团队中可能遇到的问题:

  • 对当前的需求是否理解一致
  • 对新需求/Bug如何处理

需求是否理解一致

最大的问题在于双方对需求的理解是否一致。当理解不一致时,是否有有效的方法进行需求对齐?在需求对齐后,是否能够快速对接并查看版本更新?这是第一个问题。

当需求理解不一致的时候,就容易出现 Cursor 怎么也无法写出来我们期望的内容。这时候要求我们要把需求尽可能的写的清晰明了

可以提的需求的种类

  • 功能需求,这个也是最常见的
  • 技术选型需求,大家可以明确的告诉 Cursor 我用什么技术,是 Python 还是 Java;是前后端分离,还是 Server 一体;是 Web 网页产品还是小程序还是 iOS 程序;数据库是 sqlite 还是 mysql 还是我就用一个文本进行存储
  • 部署需求,告诉 Cursor 部署环境是什么,是自己得服务器,windows/linux ;还是使用 Vercel 这样的平台;使用的是 AWS,aliyun 还是自己弄

如果你是一个编程小白的状态,可以先死记硬背然后再尝试理解

  1. 记住一些最常用的技术选型
    1. 后端
      1. Python (可以后端,也可以前端后端都有)
      2. Sqlite 数据库(基本上不用任何外的配置,拿来直接用)
    2. 前端
      1. Vue / tailwindcss (如果需要自己写前端)
      2. Vite 进行管理
    3. 管理相关
      1. Git / github
    4. 部署相关
      1. Vercel
  2. 问 AI 啊
    1. Cursor 本身就是 Claude-3.5-sonnet ,有些同学还充值了,充值了往死里问啊
    2. devv.ai / 秘塔 / perplexity.ai
    3. ChatGPT / Claude / Kimi / 豆包

然后积累出来自己一些常用的脚手架文档或者代码

和 Cursor 外包的关系,反馈 → 运行 → 反馈 → 运行

对新需求/Bug如何处理

新需求,我们一定是要完整的进行描述,我们人需要加入到 修改 的这个过程。提需求,就需要把完整的上下文、错误提示、情况描述等,完整的告诉 Cursor,然后 Cursor 才好知道如何进行工作

我们可以很方便的把错误信息传给 Cursor 


一定要给出完整的上下文,AI 的工作原理就是在新 Chat (不管是 Cursor 中还是 ChatGPT 中新 Chat)都是没有上下文的。他不知道我们脑子里面想的内容,所以一定一定要把完整的

  • 上下文
  • 场景
  • 需要解决的问题
  • 要避免的情况
  • 最好举几个例子

一起告诉 Cursor,然后才能比较好的给你一个修改

到这里,其实我们就已经不完全是让 Cursor 写代码了,人开始介入编码工作了

和 Cursor 是结对编程

很多有经验的程序员都不会让 Cursor 写代码自己啥也不管,一定是和 Cursor 一起编程

最关键的是,人会对整体项目进行一些设计,比如代码结构、技术选型、甚至是架构的设计。虽然看上去人参与的并不多,但足以给 Cursor 指明方向,Cursor 就可以更加精准的生成代码

这就变成了人和 AI 协同的过程

在将想法转化为代码的过程中,需要持续地进行沟通验证与 review。我与 Cursor 之间有着双向的代码审查机制,我仔细检查 Cursor 生成的代码,同时也依靠它来审视我的代码。

从写程序的劳动投入维度来看,可大致分为体力劳动与智慧劳动。

  • 在体力劳动方面,例如当我提出 “我现在要实现一个快速排序,你帮我把这个代码写出来。” 这样的任务时,Cursor 大约能够解决其中 90% 的工作量。
  • 在智慧劳动领域,诸如 “我应该如何去设计一个消息队列,到底要不要一个写缓存?我的分布式 ID 应该如何设计?” 这类涉及深度思考与设计决策的问题,Cursor 大概能解决 30%。

我会将诸多思考与 Cursor 深入交流,获取它的提示并让其审查我的代码,携手推进工作。这种合作模式带来的效率提升极其显著,因为它成功消除了大量以往我在开发中不确定的环节。

在未采用这种与 Cursor 结对编程的方式之前,这些不确定环节占据了我总消耗时间的约 1/3。而剩余 70% 至 80% 的时间,往往都耗费在如字面意义上的敲代码这类重复劳动之中。在这种情况下,借助 Cursor 帮忙生成代码自然毫无问题,它让我们能将更多精力聚焦于更具创造性与挑战性的智慧劳动部分,从而大幅提升整体开发效率。

和 Cursor 的结对关系,修改 → 运行 → 反馈 → 修改 → 运行 → 反馈

长期维护、添加功能

人主导,Cursor 是工具

这里暂时就不展开了,想也知道人是主导

总结一下

如果你是一个编程小白,要写的也是一些小工具,小脚本什么的,让 Cursor 去写代码就足够了,我们就把他当外包团队使用

如果想要让自己的工具、产品一直迭代更新,那学习一些编程是必要的,因为这时候你想让 Cursor 写也做不到了,只能你带着 Cursor 让代码生长了


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询