- Published on
Cursor二次开发大型项目的实用技巧
- Authors
- Name
- 辣条加辣
- @GeorgePekingzcc
Cursor二次开发大型项目的实用技巧分享
最近这几个月,我用Cursor做了不少大型项目的二次开发,踩了不少坑,也总结出一些实用技巧。今天就跟大家聊聊,怎么用Cursor更高效地进行大型项目的二开。
说实话,一开始我也是直接丢代码给AI就开始问,结果常常陷入"AI看不懂项目结构"、"代码上下文丢失"的困境,经常是改一个地方,其他地方就炸了。后来慢慢摸索出一套方法,效率提高了不少,分享给同样在用Cursor的朋友们。
1. 先让AI熟悉代码,生成项目文档
这是最关键的一步。成熟项目通常有复杂的封装和分层,依赖关系错综复杂,如果不让AI先熟悉代码,它根本搞不清楚修改一处会影响哪些地方。
我的做法是:先让Cursor读代码,生成一份markdown文档,包括:
请分析整个代码库,生成一份项目结构文档,包括:
1. 项目架构概览
2. 主要目录结构及其职责
3. 关键模块的依赖关系图
4. 核心类和接口的功能说明
5. 数据流向图
6. API接口清单
7. 常见的代码模式和约定
记住,这份文档不是给人看的,是给AI自己看的!所以信息密度要高,尽量用列表、表格和简单流程图表示。文档生成后我甚至不怎么读,直接存起来下次用。
举个例子,我最近做的一个React+Node的AI 视频项目,让Cursor生成了一份30多页的项目文档,里面详细记录了前后端的结构、数据流、组件复用逻辑等。后面每次开发新功能,AI的准确率提高了至少50%。
2. 一个chat只开发一个功能
这点看似简单,但很多人(包括我自己)刚开始都犯这个错:一个chat里问东问西,改这改那。
正确的做法是:
- 每开始一个新功能,就新建一个chat
- chat开头就把第一步生成的项目文档作为context引入
- 然后说明这次要开发的具体功能需求
比如:
我现在要开发一个新功能:给商品添加批量导入功能。
以下是项目的结构文档,请先阅读以熟悉代码库:
[粘贴前面生成的项目文档]
这么做的好处是让AI专注在一个功能上,不会被其他无关上下文干扰,也避免了chat太长AI遗忘前面的内容。
3. 功能开发后总结成Guide文档
这是我踩坑后总结出来的宝贵经验:每次实现一个通用功能后,立即让AI总结经验。
比如我们刚实现了"给系统添加新接口"这个功能,开发完成后,我会让AI生成一个guide文档:
请总结一下我们刚才添加新接口的过程,生成一个"如何添加新接口"的指南文档,包括:
1. 需要修改哪些文件
2. 代码结构和注意事项
3. 测试方法
4. 潜在的坑和解决方案
同样,这个guide主要是给AI自己看的,下次再开发类似功能时直接引用这个guide即可。
比如说我们项目要增加一个导出PDF的功能,我直接把之前总结的"如何添加文件导出功能"的guide丢给AI,它几乎不需要什么额外指导就把功能实现了,连测试用例都写得很完善。
4. 持续维护和更新文档
文档不是一成不变的,项目在迭代,文档也要跟着更新。每次我们遇到困难,解决了一个复杂问题,都要让AI更新相关文档。
比如有次我们修改用户权限系统花了大半天,过程中发现不少坑,最后我让AI把这些坑和解决方案补充到了"权限系统指南"中:
我们刚才解决了权限系统的几个问题,请将以下内容更新到权限系统指南文档中:
1. 修改角色权限时需要同步更新缓存
2. 权限检查顺序应该是:特殊权限 -> 角色权限 -> 默认权限
3. 前端权限组件需要处理异步加载状态
看似多此一举,但这些"踩坑记录"往往是最宝贵的经验,下次遇到类似问题可以直接避开。
5. 迭代多了,开发效率飞升
文档积累到一定程度后,效果是惊人的。以前要写半天的功能,现在可能十几分钟就搞定了。
最近我们需要给系统增加一个数据导入功能,以前这种功能至少要一两天。但因为有了前面积累的各种guide,我直接把需求和相关guide丢给AI,开启YOLO模式(OpenAI的最新代码能力),然后去泡咖啡。回来一看,基本功能已经实现了,只需要再做些小调整。
真正体验到了"一边玩去,AI帮我写代码"的感觉。
实用小技巧
除了上面的主要方法,还有些小技巧分享一下:
- 给文档分类:随着项目推进,文档会越来越多,建议按功能模块分类存储
- 定期"总文档":每隔一段时间,让AI重新生成一份总体项目文档,因为项目在不断迭代变化
- 换个问法:有时AI不理解你的意思,换种表达方式,或者给它更具体的例子
- 保存成功案例:特别成功的开发案例,把整个chat过程保存下来,作为以后的参考
总结
用好Cursor做大型项目开发,关键是让AI真正理解你的项目结构,并且积累项目特定的知识。
项目文档 + 功能guides + 不断更新 = 开发效率飞升
刚开始可能觉得麻烦,要生成这个文档那个guide的,但随着项目推进,你会发现这些前期投入带来的回报是指数级的。
最后,AI再强大也只是工具,真正的主导者还是我们程序员自己。希望这些经验对你有所帮助,有什么问题或者你自己摸索出的好方法,欢迎一起交流!