refactor: P0-1/2/4 解耦修复 - 拆分过耦合文件 + dashboard 解耦
This commit is contained in:
@@ -12,7 +12,7 @@
|
||||
| 模块 | 行数(最大文件) | 职责单一性 | 耦合度 | 严重度 |
|
||||
|------|----------------|-----------|--------|--------|
|
||||
| school | 325 | ✅ 良好 | ✅ 低 | 🟢 合格 |
|
||||
| classes | **2104** | ❌ 严重违反 | ❌ 严重 | 🔴 严重 |
|
||||
| classes | ~~2104~~ → 656 | ✅ 已修复 | ❌ 严重 | 🟡 需改进 |
|
||||
| scheduling | 310(算法)/ 302(actions) | ✅ 算法独立 | ⚠️ 中 | 🟡 需改进 |
|
||||
| attendance | 271 | ✅ 良好 | ⚠️ 中 | 🟢 合格 |
|
||||
| users | 291(import-export) | ❌ 违反 | ❌ 高 | 🟠 较严重 |
|
||||
@@ -21,7 +21,7 @@
|
||||
| announcements | 242 | ⚠️ 部分违反 | ✅ 低 | 🟡 需改进 |
|
||||
|
||||
**核心结论**:
|
||||
1. `classes` 模块是全项目耦合最严重的模块,单文件 2104 行远超 1000 行硬性上限,混入了 schedule、homework、grades 三个业务领域的逻辑。
|
||||
1. ~~`classes` 模块是全项目耦合最严重的模块,单文件 2104 行远超 1000 行硬性上限,混入了 schedule、homework、grades 三个业务领域的逻辑。~~ ✅ 已修复(2026-06-17 拆分为 5 个文件,均 ≤800 行)
|
||||
2. `users/import-export.ts` 违反单一职责,同时处理导入、导出、用户创建、班级注册四类逻辑。
|
||||
3. `scheduling/auto-scheduler.ts` 是算法独立化的**优秀范例**,纯函数、无 DB 访问、可独立测试。
|
||||
4. `announcements` 和 `audit` 模块的 data-access 层不完整,写操作或导出逻辑泄漏到 actions 层。
|
||||
@@ -49,11 +49,11 @@
|
||||
|
||||
---
|
||||
|
||||
### 2.2 classes 模块 — 🔴 严重
|
||||
### 2.2 classes 模块 — 🟡 需改进(文件拆分已修复,跨模块耦合仍存在)
|
||||
|
||||
**文件清单**:actions.ts (765 行) / data-access.ts (**2104 行**) / types.ts (201 行)
|
||||
**文件清单**:actions.ts (765 行) / data-access.ts (656 行) / data-access-stats.ts (604 行) / data-access-schedule.ts (230 行) / data-access-students.ts (280 行) / data-access-admin.ts (441 行) / types.ts (201 行)
|
||||
|
||||
> ⚠️ `data-access.ts` 达 2104 行,**超出 1000 行硬性上限 2 倍**,违反项目代码质量规则。
|
||||
> ✅ `data-access.ts` 已于 2026-06-17 拆分为 5 个文件,所有文件均 ≤800 行,通过 re-export 保持向后兼容。
|
||||
|
||||
#### 2.2.1 职责混乱 — 混入三个外部业务领域
|
||||
|
||||
|
||||
Reference in New Issue
Block a user