--- name: "架构师" description: "根据用户需求进行整体架构设计,输出详细的架构方案文档,为后续编码提供明确指导。当需要为新项目或功能进行技术架构设计、评估技术可行性或优化现有系统架构时调用。" --- # 架构师 ## 功能说明 此技能专门用于根据用户需求进行全面的技术架构设计,主要功能包括: 1. **需求分析与拆解**:分析用户需求,拆解为技术实现要素 2. **整体架构设计**:生成完整的系统架构方案,包括: - 技术栈选择与论证 - 系统分层与模块划分 - 核心流程设计 - 数据模型设计 - 接口设计规范 3. **技术方案详细设计**:提供详细的技术实现方案,包括: - 关键类与函数设计 - 数据库结构设计 - API接口设计 - 性能优化策略 - 安全考虑因素 4. **编码指导文档**:生成可直接指导编码的详细文档,包括: - 代码结构与命名规范 - 开发环境配置 - 测试策略与方案 - 部署与运维方案 ## 使用场景 当遇到以下情况时,应调用此技能: - **新项目启动**:为全新项目设计完整的技术架构 - **功能扩展**:为现有系统设计新功能的架构方案 - **技术重构**:评估并设计系统重构的架构方案 - **技术选型**:为特定需求选择合适的技术栈 - **编码指导**:为开发团队提供详细的编码实现指南 ## 使用方法 1. 提供详细的需求描述,包括: - 业务目标与范围 - 功能需求列表 - 非功能需求(性能、安全、可扩展性等) - 技术约束与偏好 2. 调用此技能生成初始架构设计方案 3. 评审架构方案并提供反馈 4. 基于反馈进行调整优化 5. 获取最终的架构设计文档和编码指导 ## 输出内容 ### 架构设计文档包含: 1. **技术栈选择**:推荐的技术栈及其选型理由 2. **系统架构图**:整体系统的分层与模块关系 3. **核心流程设计**:关键业务流程的技术实现路径 4. **数据架构**:数据库设计、数据流向与存储策略 5. **接口设计**:API接口规范与调用关系 6. **部署架构**:系统部署方案与环境配置 ### 编码指导文档包含: 1. **代码结构**:项目目录结构与文件组织 2. **编码规范**:命名约定、代码风格与最佳实践 3. **实现指南**:关键功能的具体实现步骤 4. **测试策略**:单元测试、集成测试与端到端测试方案 5. **性能优化**:性能瓶颈识别与优化建议 6. **安全实践**:安全漏洞防范与最佳安全实践 ## 示例 ### 输入示例 用户需求:"设计一个在线商城系统,包括商品管理、用户管理、购物车、订单管理和支付功能,需要支持高并发访问和数据安全" ### 输出示例 #### 架构设计方案 **技术栈选择**: - 前端:React + TypeScript + Redux - 后端:Node.js + Express + MongoDB - 数据库:MongoDB + Redis(缓存) - 支付:集成第三方支付API - 部署:Docker + Kubernetes **系统架构图**: - 前端层:React应用 → CDN缓存 - API层:Express路由 → 中间件 - 服务层:业务逻辑服务 → 微服务架构 - 数据层:MongoDB → Redis缓存 - 外部服务:支付网关 → 短信/邮件服务 **核心流程设计**: 1. 用户注册/登录流程 2. 商品浏览与搜索流程 3. 购物车管理流程 4. 订单创建与支付流程 5. 订单状态更新流程 **数据架构**: - 用户表:存储用户信息与认证数据 - 商品表:存储商品信息与库存 - 购物车表:存储用户购物车数据 - 订单表:存储订单信息与状态 - 支付表:存储支付记录与交易信息 **接口设计**: - 用户接口:/api/users/* - 商品接口:/api/products/* - 购物车接口:/api/cart/* - 订单接口:/api/orders/* - 支付接口:/api/payments/* #### 编码指导文档 **代码结构**: ``` src/ ├── frontend/ │ ├── components/ │ ├── pages/ │ ├── redux/ │ ├── services/ │ └── utils/ ├── backend/ │ ├── api/ │ ├── services/ │ ├── models/ │ ├── middleware/ │ └── config/ └── shared/ ├── types/ └── utils/ ``` **编码规范**: - 前端:遵循ESLint + Prettier规范 - 后端:使用TypeScript类型定义 - 命名:采用驼峰命名法,类名使用 PascalCase - 注释:关键代码必须有详细注释 **实现指南**: 1. 初始化项目结构与依赖 2. 实现用户认证系统 3. 开发商品管理功能 4. 实现购物车功能 5. 开发订单与支付流程 6. 集成第三方支付API **测试策略**: - 前端:Jest + React Testing Library - 后端:Mocha + Chai - 集成测试:Supertest - 端到端测试:Cypress **性能优化**: - 前端:代码分割、图片优化、缓存策略 - 后端:数据库索引、Redis缓存、负载均衡 - API:响应压缩、请求限流、批量操作 **安全实践**: - 认证:JWT + 密码哈希 - 授权:基于角色的访问控制 - 输入验证:参数校验与SQL注入防护 - 传输安全:HTTPS + CORS配置 - 数据保护:敏感数据加密存储