Appearance
最佳实践
本指南汇总了使用CodeBuddy进行高效开发的最佳实践,帮助你充分发挥AI编程助手的潜力。
核心原则
1. 明确的需求描述
- 具体而非抽象: 使用具体的功能描述而非抽象概念
- 包含上下文: 提供足够的背景信息
- 分步骤说明: 将复杂任务分解为简单步骤
2. 合理的上下文管理
- 精选相关文件: 只包含与任务相关的文件
- 设置项目规则: 定义编码标准和偏好
- 保持上下文更新: 及时更新项目文档和规则
3. 迭代式开发
- 小步快跑: 将大任务分解为小任务
- 及时验证: 每次修改后及时测试
- 持续优化: 根据结果不断调整策略
Agent模式最佳实践
任务描述技巧
✅ 好的描述示例:
创建一个用户注册表单组件,包含以下功能:
1. 用户名、邮箱、密码输入框
2. 密码强度验证(至少8位,包含数字和字母)
3. 邮箱格式验证
4. 提交时显示加载状态
5. 使用Tailwind CSS样式
6. 支持TypeScript类型定义❌ 不好的描述示例:
帮我做一个注册功能上下文选择策略
文件上下文
- 包含相关的组件文件
- 包含类型定义文件
- 包含样式配置文件
规则设置
- 使用TypeScript进行开发 - 遵循React Hooks最佳实践 - 使用Tailwind CSS进行样式设计 - 组件需要包含完整的类型定义 - 错误处理要友好且完整文档引用
- API文档
- 设计规范
- 项目README
任务分解示例
大任务: 创建一个完整的博客系统
分解为小任务:
- 创建博客文章数据模型
- 实现文章列表组件
- 实现文章详情页面
- 添加文章搜索功能
- 实现文章分类功能
- 添加评论系统
智能补全最佳实践
提高补全准确性
编写清晰的注释
typescript// 计算用户年龄,基于出生日期 // 参数: birthDate - 用户出生日期 (YYYY-MM-DD格式) // 返回: 用户当前年龄 function calculateAge(birthDate: string): number { // Tab键触发智能补全 }使用有意义的变量名
typescript// 好的命名 const userRegistrationForm = // Tab补全会更准确 // 不好的命名 const form = // Tab补全可能不准确保持代码结构清晰
typescriptinterface User { id: string; name: string; email: string; } // 在这里使用Tab补全会基于User接口提供准确建议 const createUser = (userData: Partial<User>) => { // Tab键补全 }
利用历史编辑模式
- 建立编码模式: 重复相似的编码模式,让AI学习你的习惯
- 保持一致性: 在同一项目中保持一致的编码风格
- 及时反馈: 对不准确的补全进行修正,帮助AI学习
内联聊天最佳实践
精确的代码选择
选择最小必要范围
typescript// 只选择需要修改的函数 function validateEmail(email: string): boolean { return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email); }包含相关上下文
typescript// 选择包含类型定义的完整上下文 interface FormData { email: string; password: string; } function validateForm(data: FormData): boolean { // 选择这个函数进行修改 }
清晰的修改指令
✅ 好的指令示例:
将这个邮箱验证函数改为支持多种邮箱格式,包括:
1. 标准邮箱格式
2. 带加号的邮箱(如 user+tag@domain.com)
3. 子域名邮箱
并添加详细的错误信息返回❌ 不好的指令示例:
改一下这个函数快速操作工具最佳实践
配置集成
环境变量管理
- 使用.env文件管理敏感信息
- 为不同环境创建不同配置
- 在配置集成中设置环境变量模板
第三方服务配置
- 预先准备API密钥
- 了解服务的配置要求
- 测试配置的有效性
Figma集成
设计文件准备
- 确保设计文件结构清晰
- 使用有意义的图层命名
- 标注重要的交互状态
组件选择策略
- 选择完整的组件而非片段
- 注意响应式设计要求
- 考虑组件的可复用性
部署工具
部署前检查
- 运行所有测试
- 检查构建是否成功
- 验证环境变量配置
部署策略
- 使用分阶段部署
- 保留回滚能力
- 监控部署状态
上下文管理最佳实践
规则设置
编码标准
代码规范: - 使用TypeScript进行类型安全开发 - 遵循ESLint和Prettier配置 - 函数名使用camelCase - 常量使用UPPER_SNAKE_CASE - 组件使用PascalCase框架偏好
技术栈偏好: - React + TypeScript - 状态管理使用Zustand - 样式使用Tailwind CSS - 测试使用Jest + React Testing Library - 构建工具使用Vite项目约定
项目约定: - 组件放在src/components目录 - 工具函数放在src/utils目录 - 类型定义放在src/types目录 - API调用放在src/api目录 - 每个组件都要有对应的测试文件
文件上下文选择
- 相关性原则: 只包含与当前任务相关的文件
- 层次性原则: 包含不同层次的文件(组件、工具、类型)
- 完整性原则: 确保上下文信息完整,避免缺失关键依赖
Git集成
提交信息规范
feat: 添加用户注册功能 fix: 修复邮箱验证bug docs: 更新API文档 style: 调整按钮样式 refactor: 重构用户服务 test: 添加登录功能测试分支管理
- 使用功能分支进行开发
- 定期合并主分支
- 保持分支历史清晰
MCP集成最佳实践
数据源配置
数据库连接
- 使用连接池管理连接
- 配置适当的超时时间
- 实现连接重试机制
API集成
- 实现错误处理和重试
- 使用缓存提高性能
- 监控API调用频率
文档源连接
- 保持文档更新
- 使用结构化的文档格式
- 建立文档索引
性能优化
缓存策略
- 缓存频繁访问的数据
- 设置合理的缓存过期时间
- 实现缓存失效机制
数据预加载
- 预加载常用数据
- 使用懒加载减少初始负载
- 实现增量更新
性能优化最佳实践
响应速度优化
模型选择策略
- 日常开发: Claude-3.7-Sonnet
- 复杂任务: Claude-4.0-Sonnet
- 快速补全: Gemini-2.5-Flash
- 代码审查: Gemini-2.5-Pro
上下文优化
- 限制上下文文件数量(建议不超过10个)
- 定期清理无关上下文
- 使用文件摘要而非完整文件
网络优化
- 使用稳定的网络连接
- 配置代理(如需要)
- 监控网络延迟
内存使用优化
- 定期重启: 长时间使用后重启IDE
- 清理缓存: 定期清理临时文件和缓存
- 关闭无用标签: 关闭不需要的文件标签
团队协作最佳实践
共享规则和配置
团队规则文件
json{ "rules": { "codeStyle": "团队编码规范", "frameworks": ["React", "TypeScript", "Tailwind"], "testingStrategy": "Jest + RTL", "deploymentTarget": "Vercel" } }项目模板
- 创建标准项目模板
- 包含常用配置和依赖
- 提供示例代码和文档
知识共享
文档维护
- 保持API文档更新
- 记录重要的设计决策
- 分享最佳实践经验
代码审查
- 使用CodeBuddy辅助代码审查
- 建立审查检查清单
- 分享审查反馈
安全最佳实践
敏感信息保护
环境变量
- 不在代码中硬编码密钥
- 使用环境变量管理敏感信息
- 定期轮换API密钥
代码审查
- 检查是否泄露敏感信息
- 验证权限控制逻辑
- 确保输入验证完整
依赖管理
定期更新
- 保持依赖库更新
- 监控安全漏洞
- 使用安全扫描工具
最小权限原则
- 只安装必要的依赖
- 审查第三方库权限
- 使用可信的包源
故障排除最佳实践
问题诊断
系统化排查
- 检查网络连接
- 查看错误日志
- 验证配置设置
- 测试基本功能
问题记录
- 记录错误信息
- 保存相关截图
- 记录复现步骤
- 记录解决方案
预防措施
定期备份
- 备份重要配置
- 使用版本控制
- 创建恢复点
监控和告警
- 监控系统性能
- 设置错误告警
- 定期健康检查
持续改进
学习和适应
- 跟踪新功能: 关注CodeBuddy的更新和新功能
- 实验和测试: 在非关键项目中尝试新功能
- 收集反馈: 记录使用体验和改进建议
优化工作流
- 定期评估: 评估当前工作流的效率
- 调整策略: 根据项目需求调整使用策略
- 分享经验: 与团队分享最佳实践
通过遵循这些最佳实践,你可以更高效地使用CodeBuddy,提升开发效率和代码质量。记住,最佳实践需要根据具体项目和团队需求进行调整,持续优化是关键。