技术标准
ReCloud Studio 制定技术开发标准,确保代码质量、可维护性和团队协作效率。
- 清晰性: 代码必须清晰易懂
- 可维护性: 代码必须易于维护
- 可测试性: 代码必须易于测试
- 一致性: 团队代码风格必须一致
- 变量命名: 使用有意义的变量名
- 函数命名: 使用动词开头的函数名
- 类命名: 使用名词或名词短语的类名
- 常量命名: 使用全大写加下划线的常量名
- 必要注释: 为复杂逻辑添加注释
- 文档注释: 为公共 API 添加文档注释
- 更新注释: 代码修改时同步更新注释
- 避免过度注释: 避免添加不必要的注释
Git 规范
Section titled “Git 规范”- 分支策略: 使用 Git Flow 或 GitHub Flow
- 提交信息: 遵守 Conventional Commits 规范
- 代码审查: 所有代码必须经过审查
- 合并策略: 使用 Squash Merge 或 Rebase
- 版本号: 遵循 SemVer 规范
- 功能分支:
feature/功能名称 - 修复分支:
fix/问题描述 - 发布分支:
release/版本号 - 热修复分支:
hotfix/问题描述
提交信息格式
Section titled “提交信息格式”<type>(<scope>): <subject>
<body>
<footer>类型包括:
- feat: 新功能
- fix: Bug 修复
- docs: 文档更新
- style: 代码格式调整
- refactor: 代码重构
- test: 测试相关
- chore: 构建/工具相关
- 单元测试: 测试最小的代码单元
- 集成测试: 测试模块之间的交互
- 端到端测试: 测试完整的用户流程
- 性能测试: 测试系统性能
- 覆盖率: 关键代码测试覆盖率不低于 80%
- 自动化: 测试必须自动化执行
- 持续集成: 测试必须集成到 CI/CD 流程
- 及时修复: 测试失败必须及时修复
测试最佳实践
Section titled “测试最佳实践”- 测试先行: 采用 TDD 或 BDD 开发方式
- 独立测试: 测试之间必须相互独立
- 快速反馈: 测试必须快速执行
- 可维护测试: 测试代码必须易于维护
- 设计文档: 项目设计文档
- API 文档: API 接口文档
- 用户文档: 用户使用文档
- 开发文档: 开发者文档
- 清晰易懂: 文档必须清晰易懂
- 准确完整: 文档必须准确完整
- 及时更新: 文档必须及时更新
- 版本管理: 文档必须进行版本管理
- Markdown: 使用 Markdown 编写文档
- Mermaid: 使用 Mermaid 绘制图表
- OpenAPI: 使用 OpenAPI 规范编写 API 文档
- JSDoc: 使用 JSDoc 编写代码文档
以下为性能目标参考值,具体指标按各项目实际需求调整,不作为硬性承诺。
- 页面加载: 首屏加载时间不超过 3 秒
- API 响应: API 响应时间不超过 500 毫秒
- 数据库查询: 数据库查询时间不超过 100 毫秒
- CPU 使用率: 正常情况下不超过 70%
- 内存使用率: 正常情况下不超过 80%
- 磁盘使用率: 正常情况下不超过 80%
- 并发用户: 支持至少 100 个并发用户
- 请求队列: 请求队列长度不超过 100
- 错误率: 错误率不超过 1%
- 输入验证: 对所有用户输入进行验证
- 输出编码: 对所有输出进行编码
- 身份验证: 实施严格的身份验证
- 访问控制: 实施严格的访问控制
- 加密存储: 对敏感数据进行加密存储
- 传输安全: 使用 HTTPS 传输数据
- 备份恢复: 定期备份数据
- 审计日志: 记录所有操作日志
- 漏洞扫描: 定期进行漏洞扫描
- 渗透测试: 定期进行渗透测试
- 代码审计: 定期进行代码审计
- 安全培训: 定期进行安全培训
- 代码风格检查: 使用 ESLint 等工具检查代码风格
- 代码复杂度: 控制代码复杂度
- 重复代码检测: 检测和消除重复代码
- 依赖检查: 检查依赖的安全性和质量
- 性能监控: 监控代码性能
- 内存泄漏检测: 检测内存泄漏
- 错误追踪: 追踪运行时错误
- 日志分析: 分析运行日志
- 审查清单: 使用代码审查清单
- 自动化检查: 使用自动化工具进行检查
- 人工审查: 进行人工审查
- 反馈改进: 根据反馈改进代码
- IDE: VS Code、Neovim
- 版本控制: Git
- 包管理: bun(前端)、cargo(Rust)、Go Modules(Go)
- 构建工具: Vite / esbuild(前端构建)、Webpack(遗留项目)
- 单元测试: Vitest、Jest
- 集成测试: Playwright、Cypress
- 性能测试: k6、Artillery
- 安全测试: ESLint Security、npm audit
CI/CD 工具
Section titled “CI/CD 工具”- 持续集成: GitHub Actions
- 持续部署: Cloudflare Pages
- 容器化: Docker(如需要)
- 监控告警: Sentry、Grafana