一、创建项目前期步骤
1.先给AI设定一个对应项目经理角色,
2.然后跟AI沟通项目功能,生成功能设计文件:README.md
README.md=项目功能
3.再让AI总结写出开发项目规则文件: .cursorrules
是技术栈进行限定,比如使用什么框架、什么语言等限制
二、cursor功能技巧
2.1 @Codebase功能:
是 Cursor 中的一个功能,它允许你将整个代码库(Codebase)与 AI 进行交互。通过 @Codebase
,AI 可以理解你项目的上下文,并根据整个代码库的内容来回答问题、生成代码或提供建议。这个功能特别适合在大型项目中,AI 需要了解全局上下文才能给出准确的建议。
聊天框中输入 @Codebase
,然后提出你的问题或需求。
通俗易懂的例子
假设你正在开发一个电商网站,代码库中有以下文件:
-
product.py
:定义了商品类(Product
)和相关方法。 -
cart.py
:定义了购物车类(Cart
)和相关方法。 -
user.py
:定义了用户类(User
)和相关方法。
现在,你想实现一个功能:“当用户将商品添加到购物车时,检查库存并更新库存数量”。
没有 @Codebase
的情况
如果你直接问 AI:“如何实现这个功能?”,AI 可能会生成一个通用的代码片段,但它不知道你的代码库中已经定义了 Product
、Cart
和 User
类,也不知道它们的属性和方法。因此,生成的代码可能不够准确,甚至需要你手动调整。
使用 @Codebase
的情况
你可以这样问 AI:
复制
@Codebase 如何实现当用户将商品添加到购物车时,检查库存并更新库存数量?
AI 会分析你的整个代码库,发现 Product
类中有一个 stock
属性,Cart
类中有一个 add_product
方法。然后,AI 会根据这些信息生成一个与你的代码库完全兼容的实现
2.1.1. 明确项目上下文
在对话开始时,明确告诉 AI 项目的背景、技术栈、代码风格和架构。例如:
-
技术栈:Python + Flask,使用 SQLAlchemy 作为 ORM。
-
代码风格:遵循 PEP 8,使用类型注解。
-
架构:采用 MVC 模式,代码分为
models
、views
和controllers
目录。
示例对话:
@Codebase 这是一个 Flask 项目,使用 SQLAlchemy 作为 ORM,代码风格遵循 PEP 8。请帮我生成一个用户注册功能的代码。
2.1.2. 使用 @Codebase
保持上下文
每次对话时,尽量使用 @Codebase
,让 AI 始终基于你的整个代码库进行回答。这样可以避免 AI 生成与现有代码冲突或不一致的代码。
示例对话:
@Codebase 请帮我优化这个函数,确保它与现有的代码风格一致。
2.1.3. 分模块对话
将项目分解为模块或功能点,每次对话专注于一个模块。例如:
-
先完成用户认证模块。
-
然后完成商品管理模块。
-
最后完成订单处理模块。
示例对话:
@Codebase 我们现在专注于用户认证模块。请帮我实现用户登录功能。
2.1.4. 定期检查生成的代码
AI 生成的代码可能不完全符合你的需求,因此需要定期检查并调整:
-
代码风格:确保生成的代码符合项目的代码风格(如缩进、命名规范等)。
-
逻辑一致性:检查生成的代码是否与项目的业务逻辑一致。
-
性能优化:确保生成的代码没有性能问题。
示例对话:
@Codebase 请检查这段代码是否符合项目的代码风格,并优化它的性能。
2.1.5. 使用版本控制(Git)
在开发过程中,定期提交代码到 Git,并添加清晰的提交信息。这样可以在出现问题时快速回滚,同时也能记录项目的演进过程。
示例操作:
git add .
git commit -m "feat: 实现用户注册功能"
git push origin main
2.1.6. 统一命名规范
在对话中明确命名规范,并让 AI 遵循。例如:
-
变量名使用小写字母和下划线(
user_name
)。 -
类名使用驼峰命名法(
UserController
)。 -
常量名使用大写字母和下划线(
MAX_USERS
)。
示例对话:
@Codebase 请生成一个函数