explain-codelisted
Install: claude install-skill afine907/skills
# Explain Code — 代码解读技能
深度分析代码,帮助快速理解代码的设计意图和执行逻辑。
## Goal
深度分析代码,包含核心功能、架构设计、执行流程、依赖关系、代码质量评估
## Trigger
- 用户要求"解释代码"、"分析代码"、"代码走读"
- 新人入职需要理解项目代码
- 代码评审前需要理解设计意图
## 工作流程
```
代码输入 → 结构分析 → 逻辑梳理 → 依赖映射 → 质量评估 → 输出报告
```
## 分析维度
### 1. 核心功能分析
| 分析项 | 内容 |
|--------|------|
| 入口点 | 程序从哪里开始执行 |
| 核心职责 | 这段代码的主要功能是什么 |
| 输入输出 | 接收什么数据,产出什么结果 |
| 业务价值 | 解决了什么问题 |
### 2. 架构设计分析
| 分析项 | 内容 |
|--------|------|
| 设计模式 | 使用了什么设计模式(工厂、策略、观察者等) |
| 模块划分 | 代码如何组织,模块间如何协作 |
| 分层结构 | 是否遵循分层架构(Controller/Service/Repository) |
| 扩展性 | 设计是否便于扩展 |
### 3. 执行流程分析
```
主流程:
输入 → 处理步骤1 → 处理步骤2 → ... → 输出
分支流程:
条件A → 分支1处理
条件B → 分支2处理
条件C → 分支3处理
异常流程:
异常类型1 → 处理方式1
异常类型2 → 处理方式2
```
### 4. 依赖关系分析
```
当前模块
├── 依赖模块A (import)
│ ├── 使用函数: func1, func2
│ └── 使用类: ClassA
├── 依赖模块B (import)
│ └── 使用常量: CONST_X
├── 外部依赖 (pip/npm)
│ ├── requests: HTTP 调用
│ └── sqlalchemy: 数据库操作
└── 被依赖 (被谁调用)
├── 模块X 调用 current_func1
└── 模块Y 调用 current_func2
```
### 5. 代码质量评估
| 维度 | 评估标准 | 评分 |
|------|----------|------|
| 可读性 | 命名清晰、注释充分、结构清晰 | 1-5 |
| 可维护性 | 模块化、低耦合、单一职责 | 1-5 |
| 健壮性 | 错误处理完整、边界检查 | 1-5 |
| 性能 | 算法效率、资源使用 | 1-5 |
| 安全性 | 输入验证、权限检查 | 1-5 |
## 输出格式
### 简洁版(快速理解)
```markdown
# 代码解读: {文件/模块名称}
## 一句话总结
{这段代码做什么}
## 核心功能
- {功能1}
- {功能2}
## 执行流程
1. {步骤1}
2. {步骤2}
3. {步骤3}
## 关键代码
```python
# 最核心的代码段
{代码}
```
## 注意事项
- {需要注意的点}
```
### 详细版(深入分析)