You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

186 lines
5.2 KiB

---
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配置
- 数据保护:敏感数据加密存储