- Add complete SDLC document management system (35,000+ words) - Add GitHub integration workflows (3 workflows) - Add intelligent alert system with 6 rules - Add setup automation scripts - Add document templates for all phases - Support both GitHub native and custom platform approaches Features: - Document lifecycle management - Progress tracking and visualization - Smart alert engine - GitHub Projects integration - Claude Code deep integration - Automated workflows Documentation: - docs/workflows/document-management-system.md - docs/workflows/custom-platform-design.md - docs/workflows/alert-rules-config.md - IMPLEMENTATION-GUIDE.md - DOCUMENT-MANAGEMENT-SUMMARY.md 🤖 Generated with Claude Code Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
9.2 KiB
9.2 KiB
Claude Code 开发工作流
本文档描述如何使用 Claude Code 进行高效的软件开发。
🎯 核心理念
- AI 优先开发 - 将 Claude Code 作为核心开发伙伴
- 迭代式进步 - 小步快跑,持续改进
- 自动化一切 - 最大化自动化,减少手动操作
- 文档驱动 - 保持文档与代码同步
📋 标准开发流程
阶段 1: 需求分析 (15-30 分钟)
graph LR
A[接收需求] --> B[创建 Issue]
B --> C[与 Claude 讨论]
C --> D[明确验收标准]
D --> E[估算复杂度]
操作步骤:
-
创建 GitHub Issue
gh issue create --template claude-assisted-task.md -
与 Claude 初步讨论
"我们收到一个新需求:[描述需求] 请帮我: 1. 分析需求的技术可行性 2. 识别潜在的技术挑战 3. 建议实现方案" -
明确验收标准
- 功能要求
- 性能要求
- 安全要求
- 测试要求
阶段 2: 技术设计 (30-60 分钟)
graph LR
A[分析现有架构] --> B[设计技术方案]
B --> C[评估方案]
C --> D[选择最优方案]
D --> E[文档化设计]
操作步骤:
-
探索现有代码库
"请帮我分析以下模块的代码结构: - src/auth/ - src/models/user.py 我需要了解: 1. 现有的认证机制 2. 用户数据模型 3. 扩展点在哪里" -
设计技术方案
"基于现有架构,请设计一个角色权限系统: 要求: - 支持多角色 - 支持细粒度权限 - 易于扩展 - 性能优化 请提供: 1. 数据库 schema 设计 2. API 接口设计 3. 代码结构建议 4. 潜在的技术风险" -
方案评审
- 与团队讨论
- Claude 协助分析利弊
- 选择最优方案
-
文档化设计
"请将我们讨论的设计方案整理成技术设计文档, 包括: - 架构图(Mermaid 格式) - 数据模型 - API 接口定义 - 实现计划"
阶段 3: 实现开发 (2-8 小时)
graph LR
A[创建功能分支] --> B[迭代开发]
B --> C[编写测试]
C --> D[代码审查]
D --> E[提交代码]
操作步骤:
-
创建功能分支
git checkout -b feature/role-permission-system -
迭代实现(使用番茄工作法)
第一个迭代(25分钟):数据模型
"让我们开始实现角色权限系统。 第一步:创建数据模型 请帮我在 src/models/ 创建: 1. Role 模型 2. Permission 模型 3. 用户-角色关联表 4. 角色-权限关联表"第二个迭代(25分钟):API 端点
"现在实现 API 端点: 1. POST /roles - 创建角色 2. GET /roles - 获取角色列表 3. PUT /roles/{id} - 更新角色 4. DELETE /roles/{id} - 删除角色 要求: - 使用 FastAPI - 添加请求验证 - 处理错误情况"第三个迭代(25分钟):权限检查
"实现权限检查装饰器: @require_permission('admin') def admin_only_endpoint(): ... 包括: 1. 装饰器实现 2. 权限验证逻辑 3. 缓存机制(减少数据库查询)" -
编写测试
"为角色权限系统编写全面的测试: 1. 单元测试 - 测试每个模型方法 - 测试权限检查逻辑 2. 集成测试 - 测试 API 端点 - 测试完整的权限流程 3. 边界测试 - 测试无权限情况 - 测试错误输入 - 测试并发场景 要求: - 使用 pytest - 达到 90% 以上覆盖率 - 包含清晰的测试说明" -
本地验证
# 运行测试 pytest tests/ -v --cov=src # 代码质量检查 black src/ tests/ flake8 src/ tests/ mypy src/ -
Claude 代码审查
"请审查我刚实现的角色权限系统代码: 重点检查: 1. 安全性 - SQL 注入风险 - 权限绕过漏洞 - 敏感信息泄露 2. 性能 - N+1 查询问题 - 缓存策略是否合理 - 数据库索引 3. 可维护性 - 代码是否清晰 - 是否有重复代码 - 命名是否规范 4. 完整性 - 错误处理是否完善 - 边界情况是否考虑 - 日志是否充分"
阶段 4: 质量保证 (1-2 小时)
graph LR
A[自动化测试] --> B[安全扫描]
B --> C[性能测试]
C --> D[文档更新]
D --> E[准备 PR]
操作步骤:
-
运行完整测试套件
# 单元测试 + 集成测试 pytest tests/ -v --cov=src --cov-report=html # 查看覆盖率报告 open htmlcov/index.html -
安全扫描
# 依赖安全检查 pip install safety safety check # 代码安全扫描 bandit -r src/ -
性能测试
"请帮我设计性能测试: 测试场景: 1. 权限检查性能(1000次/秒) 2. 批量角色分配(100个用户) 3. 并发权限验证(100并发) 要求: - 使用 locust 或 pytest-benchmark - 提供性能基准 - 识别性能瓶颈" -
更新文档
"请更新以下文档: 1. API 文档 - 新增的角色权限接口 - 请求/响应示例 - 错误码说明 2. 用户手册 - 如何配置角色 - 如何分配权限 - 常见问题解答 3. 开发文档 - 如何添加新权限 - 权限系统架构 - 最佳实践 格式:Markdown,包含代码示例"
阶段 5: 代码评审与合并 (30-60 分钟)
graph LR
A[创建 PR] --> B[自动化检查]
B --> C[人工审查]
C --> D[修改完善]
D --> E[合并代码]
操作步骤:
-
创建 Pull Request
"请帮我创建一个详细的 PR 描述: 包括: 1. 功能摘要 2. 主要变更点 3. 测试结果 4. 截图/演示(如有) 5. 部署注意事项 6. 审查要点 格式:遵循 PR 模板" -
使用 GitHub CLI 创建 PR
gh pr create --title "Feature: Role Permission System" \ --body-file pr_description.md \ --label "enhancement,claude-assisted" -
响应审查意见
"我收到了以下审查意见: [粘贴审查意见] 请帮我: 1. 分析这些意见是否合理 2. 提供修改建议 3. 实施修改" -
合并后清理
# 删除本地分支 git branch -d feature/role-permission-system # 删除远程分支 git push origin --delete feature/role-permission-system
🛠️ 高级技巧
1. 使用 Claude 进行架构重构
"我想重构 src/auth/ 模块,目标是:
1. 提高可测试性
2. 降低耦合度
3. 提升性能
请帮我:
1. 分析现有代码的问题
2. 提供重构方案
3. 评估重构风险
4. 制定重构计划(小步重构,确保随时可回滚)"
2. 使用 Claude 调试复杂问题
"遇到一个难以复现的 bug:
[描述 bug 现象]
相关代码:
[粘贴代码]
错误日志:
[粘贴日志]
请帮我:
1. 分析可能的根因
2. 提供调试策略
3. 建议修复方案
4. 添加防御措施避免类似问题"
3. 使用 Claude 优化性能
"这个 API 端点响应太慢:
GET /api/projects?search=xxx
当前耗时:2.5秒
目标:<500ms
请帮我:
1. 分析性能瓶颈(数据库查询、计算逻辑等)
2. 提供优化方案(索引、缓存、异步等)
3. 实施优化
4. 验证效果"
📊 效率指标
开发速度
使用 Claude Code 后的效率提升:
| 任务类型 | 传统方式 | 使用 Claude | 提升 |
|---|---|---|---|
| 新功能开发 | 8小时 | 4小时 | 2x |
| Bug 修复 | 2小时 | 45分钟 | 2.7x |
| 测试编写 | 3小时 | 1小时 | 3x |
| 文档编写 | 2小时 | 30分钟 | 4x |
| 代码审查 | 1小时 | 20分钟 | 3x |
代码质量
| 指标 | 目标 | 实际 |
|---|---|---|
| 测试覆盖率 | >80% | 92% |
| 代码重复率 | <5% | 3% |
| 技术债务 | <10% | 6% |
| Bug 密度 | <0.5/KLOC | 0.3/KLOC |
🎓 最佳实践总结
✅ 应该做的
-
提供充分上下文
- 项目背景
- 现有代码结构
- 技术约束
-
迭代式开发
- 小步快跑
- 频繁验证
- 及时调整
-
保持对话连续性
- 利用对话历史
- 引用之前的讨论
- 保持上下文一致
-
验证 AI 输出
- 审查生成的代码
- 运行测试验证
- 理解而不是盲从
-
文档化决策
- 记录设计选择
- 说明权衡考虑
- 便于后续维护
❌ 不应该做的
- 不要跳过测试
- 不要盲目接受所有建议
- 不要忽视安全问题
- 不要过度优化
- 不要忘记更新文档
📚 延伸阅读
维护者: 开发团队 最后更新: 2024-12-29 版本: 1.0.0