前言
前面《撬动"屎山",Cursor改动遗留项目 - 掘金》说过,后续,我会找一个普通规模的业务系统帮大家尝试一下 Cursor 在遗留项目中能做到什么地步。
当时好像还在过年,没想到,一下子都要快清明节了。
非常抱歉,今天就来填坑了!
背景及任务
背景
为了方便大家也去验证效果,这里直接采用了开源项目模拟。
- 后端工程源码:gitee.com/zccbbg/wms-...
- 前端工程源码:gitee.com/zccbbg/ruo-...
该项目是"程序员诚哥"开源的一套基于若依的wms仓库管理系统,支持lodop和网页打印入库单、出库单。
大家多去支持下哈~
任务
我们设想一个场景:
某一天,风和日丽的,领导突然告诉你,项目A的客户反馈了一个问题,但原来负责项目A的同事小张临时请假,你需要快速熟悉下项目,顶上去~
由于是老项目,没有文档,同事小张走得急,也没有交接。
嗯~任务场景稍微苛刻了点,但,万一碰上了呢。
好了,下面咱就按照这个场景试试。
操作过程
操作过程主要分为三步:
- 快速了解项目
- 运行项目
- 实现客户反馈
快速了解项目
拿到新项目,肯定要先了解下整体情况,这么多文件,还是 AI 来吧。
由于项目前后端分离,所以分开进行分析。
为了保证有效性,两个工程的 README.MD 文件已经移除。
使用 Chat
模式,codebase
,模型采用的 Claude 3.7
。
后端工程
提示词:
我新接手一个项目,这是后端工程。
没有文档,没有交接,请帮我快速分析一下整个项目情况,方便我能尽快熟悉项目。
请尽量聚焦对后续开发项目有用的部分。
结果:
分析结果如下:
- 项目概述
- 技术栈
- 项目结构
- 核心功能
- 关键配置:
- 数据库连接
- Redis配置
- 日志配置
- 代码生成配置
- 特色功能和设计
- 多数据源支持
- 审计功能
- 库存分配算法
- 接口限流
- 开发建议
- 部署说明
前端工程
提示词:
我新接手一个项目,这是前端工程。
没有文档,没有交接,请帮我快速分析一下整个项目情况,方便我能尽快熟悉项目。
请尽量聚焦对后续开发项目有用的部分。
结果:
分析结果如下:
- 项目概述
- 技术栈
- 项目结构
- 核心功能模块
- 关键技术点
- 权限控制
- 字典管理
- 请求处理
- 组件封装
- 开发注意事项
- 快速上手建议
- 部署说明
- 潜在问题
第一步个人感受
作为初次了解项目来说,上面的内容个人感觉足够了,一个是可以很方便的让我们对项目整体有个全面的了解,另一个还能提炼出一些关键的细节。
运行项目
项目了解,接下来肯定得先跑起来,要是跑不起来,一切免谈。
使用 Chat
模式,codebase
,模型采用的 Claude 3.7
。
后端工程
提示词:
我现在需要将项目运行起来,请给出详细的操作步骤。
结果:
步骤非常详细,关键的数据库连接、Redis配置、运行命令、初始化sql、访问路径都给出了。
默认密码是因为sql中有注释说明。
前端项目
提示词:
我现在需要将项目运行起来,请给出详细的操作步骤。
结果:
步骤一样详细,给出前端环境准备、安装依赖、环境变量、后端接口、运行命令、访问地址,甚至还包括多种异常情况。
第二步效果
实现客户反馈
客户反馈为:物料管理中增加物品编码字段。
使用 Composer
模式,agent
,模型采用的 Claude 3.7。
后端工程
提示词:
请为物料管理模块增加"物料编码"字段,存储客户维护的物料编码信息。
结果:
各个文件都有修改,非常省劲。
这一步是我人工做CRUD模块修改时最讨厌的一种场景,没有技术含量,还容易遗漏。
前端工程
提示词:
物料管理模块后端接口已经增加了"物料编码"字段item_customer_code,请对应修改前端工程代码。
结果:
第三步效果
是不是感觉也还可以。
总结
当然,实际接手一个旧项目比本次分享要复杂、难受的多,但是,通过 AI 辅助,我相信,这个过程会简单、好受一些。
不信的话,大家可以体验一下~
额外的一些事情
该系列文章旨在分享"AI协同编码"的实际场景,之前由于使用 Cursor 较多,且国内没有很好的同类产品,所以命名为"Cursor实战"。
最近尝试了国内字节的 Trae
,尤其是配合升级后的 DeepSeek V3-0324,虽然和 Cursor+Claude 3.7 依然有差距,但感觉可以接受。
最主要是 Trae 免费,后续计划加入 Trae 实例,这样大家也可以更好地实践分享的场景,系列名称也会升级为"AI编程实战",希望大家继续关注哈。