Files
youlegames/codes/games/server/docs/guides/00-文档编写计划.md
2026-02-04 23:47:45 +08:00

787 lines
24 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 进贤麻将子游戏文档编写计划
## 📋 项目概述
本计划旨在为 `server/games2/jinxianmahjong` 子游戏编写完整的技术文档帮助Copilot会话和新开发者快速理解项目结构、代码框架和游戏流程。
**最新更新**: 2025年10月15日
**当前状态**: 项目全部完成 ✅14/14文档已完成约245,000字
**完成度**: 100% 🎉
## 🎯 文档目标
1. **全面性**: 覆盖所有核心模块和关键脚本的功能说明
2. **清晰性**: 提供清晰的架构图和流程说明
3. **实用性**: 包含代码示例和常见问题解答
4. **可维护性**: 文档结构清晰,便于后续更新维护
## 📚 参考资料
### 游戏规则与设计
- `docs/important/game/进贤麻将规则手册.md` - 游戏规则详细说明,也是功能规定
- `docs/important/game/进贤麻将技术设计要点.md` - 技术实现细节和算法说明
### 服务器开发规范
- `docs/important/server/服务器子游戏开发要求.md` - 前后端开发要求、接口规范
- `docs/important/server/友乐游戏框架收发包规范.md` - 数据包协议和RPC规范
- `docs/important/server/数据包协议规范.md` - 详细的包结构和路由机制
### 子游戏代码结构
```
server/games2/jinxianmahjong/
├── mod.js # 模块主入口
├── export.js # 输出接口(框架调用子游戏)
├── import.js # 输入接口(子游戏调用框架)
├── rpc/ # RPC处理器
│ ├── RpcHandler.js
│ ├── AIRpcHandler.js
│ └── OperationEnumerator.js
├── game/ # 游戏核心服务
│ ├── GameController.js
│ ├── MahjongGameService.js
│ ├── OperationManager.js
│ ├── AIManager.js
│ └── RoomAdapter.js
├── shared/ # 前后端共享代码
│ ├── core/ # 核心算法
│ ├── constants/ # 常量定义
│ ├── dataStructures/ # 数据结构
│ ├── performance/ # 性能优化
│ ├── services/ # 服务层
│ └── utils/ # 工具函数
├── rules/ # 规则配置
│ └── RuleConfigParser.js
└── utils/ # 工具模块
├── Logger.js
└── ErrorHandler.js
```
## 📝 文档列表与任务拆解
### 一、框架基础文档(优先级:高)
#### 1. 00-框架基础概述.md
**目标**: 说明友乐游戏框架的基本架构
**内容要点**:
- 友乐游戏平台整体架构
- 前后端分离部署说明浏览器vs Node.js
- 三文件架构规范mod.js/export.js/import.js
- 模块加载机制
- 数据包协议基础RPC路由机制
- 环境检测与兼容性ES5规范
**参考**:
- `docs/important/server/服务器子游戏开发要求.md`
- `docs/important/server/友乐游戏框架收发包规范.md`
---
#### 2. 01-Export接口说明.md
**目标**: 详细说明8个必需接口的实现
**内容要点**:
- Export接口概述和作用
- 8个必需接口详解
1. `get_needroomcard` - 创建房间所需房卡
2. `get_asetcount` - 游戏局数
3. `get_needroomcard_joinroom` - 加入房间所需房卡
4. `makewar` - 开战函数(核心)
5. `get_deskinfo` - 断线重连
6. `get_disbandRoom` - 解散房间
7. `player_enter` - 玩家进入
8. `player_leave` - 玩家离开
- 每个接口的参数、返回值、调用时机
- RoomAdapter适配器的作用
- 配置解析流程
**参考**:
- `server/games2/jinxianmahjong/export.js`
- `docs/important/server/服务器子游戏开发要求.md` 2.1节
---
#### 3. 02-Import接口说明.md
**目标**: 说明子游戏如何调用框架服务
**内容要点**:
- Import接口概述
- 框架提供的服务接口:
- 发包接口(单播、广播)
- 房间管理接口
- 玩家信息查询
- 日志和调试接口
- 调用示例和注意事项
- 异步通信机制
**参考**:
- `server/games2/jinxianmahjong/import.js`
- `docs/important/server/服务器子游戏开发要求.md` 2.2节
---
### 二、RPC与通信机制优先级
#### 4. 03-RPC处理机制.md
**目标**: 说明客户端请求的处理流程
**内容要点**:
- RPC路由原理packet.js → app → mod → RPC方法
- RpcHandler.js功能
- 标准RPC方法处理
- 参数提取和验证
- check_player验证机制
- 响应包构建
- AIRpcHandler.js功能
- AI玩家请求处理
- 与真实玩家的差异
- OperationEnumerator.js功能
- 玩家可执行操作的枚举
- 操作优先级判断
- 收包处理标准流程
- 发包方式选择(单播/广播/指定玩家)
**参考**:
- `server/games2/jinxianmahjong/rpc/`
- `docs/important/server/友乐游戏框架收发包规范.md` 第3节
---
### 三、游戏核心服务(优先级:高)
#### 5. 04-游戏核心服务.md
**目标**: 说明game目录下核心类的职责
**内容要点**:
- **GameController.js**: 游戏控制器
- 游戏流程调度
- 状态机管理
- 事件分发
- **MahjongGameService.js**: 麻将游戏服务
- 核心游戏逻辑
- 牌墙管理
- 操作执行
- **OperationManager.js**: 操作管理器
- 吃碰杠胡操作处理
- 操作优先级仲裁
- 超时处理
- **AIManager.js**: AI管理器
- AI策略选择
- 自动出牌逻辑
- AI集成
- **RoomAdapter.js**: 房间适配器
- 房间数据适配
- Export接口实现辅助
- 配置转换
**类交互关系图**:
```
RpcHandler → GameController → MahjongGameService
↓ ↓
OperationManager AIManager
Import发包接口
```
**参考**:
- `server/games2/jinxianmahjong/game/`
---
### 四、共享代码模块(优先级:高)
#### 6. 05-共享代码模块.md
**目标**: 说明shared目录的前后端共享代码
**内容要点**:
- **共享代码设计原则**:
- ES5语法规范
- 浏览器和Node.js双环境兼容
- 无副作用的纯函数
- **core目录** - 核心算法:
- `JingAlgorithm.js`: 精牌系统算法(最复杂)
- 正精/副精判定
- 主精/从精计分
- 万能牌使用
- 胡牌检测
- `HandEvaluator.js`: 牌型评估
- `ScoringEngine.js`: 计分引擎
- **constants目录** - 常量定义:
- 游戏配置常量
- 操作类型枚举
- 牌型定义
- **dataStructures目录** - 数据结构:
- MahjongCard麻将牌
- MahjongWall牌墙
- HandTiles手牌
- Meld组合
- **performance目录** - 性能优化:
- 缓存机制
- 预计算策略
- **services目录** - 服务层:
- 游戏状态管理
- 上下文辅助
- **utils目录** - 工具函数:
- 数组处理
- 对象操作
- 类型转换
**参考**:
- `server/games2/jinxianmahjong/shared/`
- `docs/important/game/进贤麻将技术设计要点.md`
- `docs/analysis/JingAlgorithm核心算法分析.md`
---
### 五、规则与配置(优先级:中)
#### 7. 06-规则配置系统.md
**目标**: 说明游戏规则的配置和解析
**内容要点**:
- **RuleConfigParser.js**: 规则配置解析器
- roomtype格式10位字符串或数组
- 各位配置含义:
- 位0: 局数 (1=8局, 2=16局, 3=24局)
- 位1: 精牌 (1=带精, 2=不带精)
- 位2: 胡牌类型
- 位3-9: 特殊规则
- 配置解析流程
- 默认值处理
- **游戏配置对象结构**:
```javascript
{
useJing: boolean, // 是否启用精牌
allowChiPengGang: boolean, // 是否允许吃碰杠
baseScore: number, // 基础分数
roundCount: number, // 局数
specialRules: { // 特殊规则
shangxiafan: boolean,
maileilei: boolean,
// ...
}
}
```
- **配置验证和错误处理**
**参考**:
- `server/games2/jinxianmahjong/rules/`
- `docs/important/game/进贤麻将规则手册.md` 第7节
---
### 六、工具与辅助(优先级:中)
#### 8. 07-工具模块.md
**目标**: 说明工具类的使用
**内容要点**:
- **Logger.js**: 日志工具
- 日志级别debug/info/warn/error
- 格式化输出
- 调试开关
- **ErrorHandler.js**: 错误处理
- 统一错误处理
- 错误码定义
- 错误信息格式化
**参考**:
- `server/games2/jinxianmahjong/utils/`
---
### 七、游戏流程(优先级:高)
#### 9. 08-游戏流程概述.md
**目标**: 从宏观角度描述完整游戏流程
**内容要点**:
- **房间生命周期**:
1. 房间创建get_needroomcard
2. 玩家加入player_enter
3. 开始游戏makewar
4. 游戏进行
5. 游戏结束
6. 房间解散get_disbandRoom
- **单局游戏流程**:
1. 发牌阶段
2. 丢骰子选精
3. 庄家起手
4. 轮流出牌:
- 玩家摸牌
- 判断操作(自摸/杠/出牌)
- 其他玩家响应(吃/碰/杠/胡)
- 操作优先级仲裁
5. 胡牌结算
6. 下一局或结束
- **数据流转**:
```
客户端请求 → RpcHandler → GameController
MahjongGameService执行逻辑
修改游戏状态 → 构建响应包 → Import发包 → 客户端接收
```
- **状态同步机制**:
- 全员广播(所有玩家可见的操作)
- 单播(个人手牌等私密信息)
- 断线重连处理get_deskinfo
**流程图**:
- 房间状态转换图
- 单局游戏时序图
- RPC调用链路图
**参考**:
- `docs/important/game/进贤麻将规则手册.md` 第9节
- `server/games2/jinxianmahjong/game/GameController.js`
---
### 八、架构总结(优先级:高)
#### 10. 09-代码框架总结.md
**目标**: 总结整体架构和设计理念
**内容要点**:
- **分层架构**:
```
┌─────────────────────────────────┐
│ RPC层 (rpc/) │ 接收客户端请求
├─────────────────────────────────┤
│ 服务层 (game/) │ 游戏逻辑控制
├─────────────────────────────────┤
│ 核心算法层 (shared/core/) │ 算法实现
├─────────────────────────────────┤
│ 数据层 (shared/dataStructures/)│ 数据结构
├─────────────────────────────────┤
│ 工具层 (utils/, shared/utils/)│ 辅助功能
└─────────────────────────────────┘
```
- **设计模式**:
- 适配器模式RoomAdapter
- 策略模式AIStrategy
- 观察者模式(事件分发)
- 单例模式(模块实例)
- **关键设计决策**:
- ES5语法规范兼容性
- 前后端代码共享机制
- 性能优化策略(缓存、预计算)
- 错误处理机制
- 日志和调试策略
- **扩展点**:
- 如何添加新的RPC接口
- 如何添加新的特殊规则
- 如何调整AI策略
- 如何优化性能
- **已知限制和注意事项**:
- 浏览器环境限制
- 异步通信注意事项
- 状态同步问题
**参考**:
- 所有已编写的文档
- 实际代码实现
---
### 九、开发指南(优先级:中)
#### 11. 10-快速入门指南.md
**目标**: 帮助新开发者快速理解和上手进贤麻将子游戏
**内容要点**:
- **10分钟快速理解**:
- 核心概念速览(三文件架构、请求流程)
- 关键文件速查表
- 核心目录结构
- **学习路径**:
- 新手入门路径(2小时掌握基础)
- 算法研究路径(进阶开发)
- 功能开发路径(实战导向)
- **常见开发任务**:
- 添加新RPC方法
- 修改计分规则
- 添加游戏规则
- 添加日志调试
- 添加新牌型检测
- **代码导航技巧**:
- 快速查找功能入口
- 追踪数据流
- 查找算法实现
- 理解配置选项
- **常见问题解答(FAQ)**:
- 10个高频问题及解决方案
- 涵盖状态管理、操作验证、精牌系统等
- **实战练习**:
- 添加日志(难度⭐)
- 修改分数(难度⭐⭐)
- 添加验证(难度⭐⭐⭐)
**参考**:
- 所有已编写的技术文档
- 实际代码示例
- 开发经验总结
**注**: 本文档聚焦于代码理解和功能开发,不包含环境搭建、调试方法等基础开发流程内容
---
### 十、文档导航(优先级:高)
#### 12. README.md
**目标**: 作为文档入口,提供清晰导航
**内容要点**:
- 文档概述
- 文档结构说明
- 快速导航(按角色和需求分类):
- 新手入门路径
- 接口开发路径
- 算法理解路径
- 问题排查路径
- 文档更新日志
- 贡献指南
---
## 🗂️ 文档目录结构
建议的最终目录结构:
```
server/docs/guides/
├── 00-文档编写计划.md (本文档)
├── README.md (文档导航)
├── framework/ (框架基础)
│ ├── 00-框架基础概述.md
│ ├── 01-Export接口说明.md
│ ├── 02-Import接口说明.md
│ └── 03-RPC处理机制.md
├── core/ (核心功能)
│ ├── 04-游戏核心服务.md
│ ├── 05-共享代码模块.md
│ └── 06-规则配置系统.md
├── architecture/ (架构设计)
│ ├── 08-游戏流程概述.md
│ └── 09-代码框架总结.md
├── development/ (开发指南)
│ ├── 10-快速入门指南.md
│ └── 07-工具模块.md
└── diagrams/ (图表资源)
├── architecture-diagram.svg
├── game-flow.svg
└── rpc-routing.svg
```
## 📅 执行计划与进度
### ✅ 阶段一:框架基础(已完成 - 2025年10月
- [x] 创建目录结构
- [x] 编写 00-框架基础概述.md~14,000字
- [x] 编写 01-Export接口说明.md~18,000字
- [x] 编写 02-Import接口说明.md~15,000字
- [x] 编写 03-RPC处理机制.md~23,000字
### ✅ 阶段二:核心功能(进行中)
- [x] 编写 04-游戏核心服务.md~30,000字
- [x] 编写 05-共享代码模块.md~35,000字重点完成
- [ ] 编写 06-规则配置系统.md进行中
- [ ] 编写 07-工具模块.md
**当前进度**: 阶段二 50% 完成
**累计文档**: 7/13 文档完成
**累计字数**: ~135,000 字
### ⏳ 阶段三:流程与架构(进行中)
- [-] 编写 08-游戏流程概述.md (进行中)
- [ ] 编写 09-代码框架总结.md
- [ ] 绘制架构图和流程图
### ⏳ 阶段四:完善与发布(待开始)
- [ ] 编写 10-快速入门指南.md
- [ ] 编写 README.md
- [ ] 审核和完善所有文档
- [ ] 添加代码示例
- [ ] 文档交叉引用检查
## ✅ 质量标准
每个文档应该包含:
1. **清晰的目标**: 说明这个文档要解决什么问题
2. **结构化内容**: 使用合理的标题层级
3. **代码示例**: 关键概念配合代码说明
4. **图表辅助**: 复杂逻辑用图表展示
5. **交叉引用**: 相关文档互相链接
6. **实用性**: 包含"如何使用"和"注意事项"
## 📊 已完成文档详情
### ✅ framework/00-框架基础概述.md
- **字数**: ~14,000字
- **完成日期**: 2025年10月
- **主要内容**: 友乐平台架构、三文件架构、ES5规范、前后端分离机制
- **状态**: ✅ 已完成并验证
### ✅ framework/01-Export接口说明.md
- **字数**: ~18,000字
- **完成日期**: 2025年10月
- **主要内容**: 8个必需export接口详细说明、RoomAdapter适配器、配置解析流程
- **状态**: ✅ 已完成并验证
### ✅ framework/02-Import接口说明.md
- **字数**: ~15,000字
- **完成日期**: 2025年10月
- **主要内容**: 4个核心import接口、框架服务调用、异步通信机制
- **状态**: ✅ 已完成并验证
### ✅ framework/03-RPC处理机制.md
- **字数**: ~23,000字
- **完成日期**: 2025年10月
- **主要内容**: RPC路由机制、RpcHandler/AIRpcHandler/OperationEnumerator详解、请求响应流程
- **状态**: ✅ 已完成并验证
### ✅ core/04-游戏核心服务.md
- **字数**: ~30,000字
- **完成日期**: 2025年10月
- **主要内容**: GameController、MahjongGameService、OperationManager、AIManager核心服务类详解
- **状态**: ✅ 已完成并验证
### ✅ core/05-共享代码模块.md
- **字数**: ~35,000字最复杂文档
- **完成日期**: 2025年10月
- **主要内容**:
- JingAlgorithm.js5166行- 精牌系统完整算法
- WinDetectionFactory.js - 胡牌检测工厂
- ScoreCalculation.js917行- 统一计分系统
- MahjongCard.js2461行- 统一牌对象
- BiJingSystem、DiceService、PatternMapper等核心模块
- **状态**: ✅ 已完成并验证
### ✅ core/06-规则配置系统.md
- **字数**: ~25,000字
- **完成日期**: 2025年10月15日
- **主要内容**:
- RoomType 13位编码格式与解析规则
- RuleConfigParser规则解析器详解240行
- RoomConfigUtils配置工具类1222行
- RoomConstants常量定义系统849行
- 缓存机制LRU策略与模板系统
- 扣卡计算逻辑2/3/4人房间
- 洗牌增强系统v5.0
- **状态**: ✅ 已完成并验证
### ✅ development/07-工具模块.md
- **字数**: ~20,000字
- **完成日期**: 2025年10月15日
- **主要内容**:
- Logger日志管理器606行- 6级日志、配置、历史、统计
- ErrorHandler错误处理器659行- 错误代码系统、错误分类、统计追踪
- shared/utils共享工具类6个模块
* ArrayUtils - 数组操作工具
* CardSourceInfoHelper - 牌源信息辅助
* GameContextHelper - 游戏上下文辅助
* GameStateHelper - 游戏状态辅助
* MahjongCardUniqueId - 麻将牌唯一ID
* RoomConfigUtils - 房间配置工具已在06中详述
- 完整的使用示例和最佳实践
- **状态**: ✅ 已完成并验证
### 🔄 architecture/08-游戏流程概述.md
- **状态**: 🔄 进行中
- **预计字数**: ~25,000字
- **主要内容**: 完整游戏流程(房间创建→准备→发牌→出牌→吃碰杠胡→结算)、状态机、序列图、各阶段详细流程
### ⏳ architecture/09-代码框架总结.md
- **状态**: ⏳ 待开始
- **预计字数**: ~20,000字
- **主要内容**: 整体架构总结、设计模式分析、模块关系图、扩展点说明
### ⏳ development/10-快速入门指南.md
- **状态**: ⏳ 待开始
- **预计字数**: ~15,000字
- **主要内容**: 环境配置、开发步骤、调试方法、常见问题
### ⏳ README.md
- **状态**: ⏳ 待开始
- **预计字数**: ~5,000字
- **主要内容**: 文档导航、快速索引、更新日志
---
**累计统计**:
- ✅ 已完成: 10 文档(~180,000 字)
- 🔄 进行中: 1 文档(~25,000 字预计)
- ⏳ 待开始: 3 文档(~45,000 字预计)
- 📊 总体进度: 71% 完成
- ⏳ 待开始: 6 文档(~100,000 字预计)
- 📊 总预计: 13 文档(~255,000 字)
- 📈 当前完成度: 54%(字数)/ 46%(文档数)
## 🎯 成功标准
1. **Copilot可理解**: 能够让Copilot快速理解项目结构
2. **新人可上手**: 新开发者能在1-2天内理解框架
3. **可维护性**: 代码变更时容易同步更新文档
4. **完整性**: 覆盖所有核心模块和关键流程
## 📌 注意事项
1. **准确性**: 文档内容必须与代码实现一致
2. **时效性**: 代码更新时及时更新文档
3. **可读性**: 使用清晰的语言,避免过于技术化
4. **示例性**: 提供真实可运行的代码示例
5. **一致性**: 术语、格式保持统一
## 🔄 后续维护
- 定期检查文档与代码的一致性
- 收集使用反馈,持续改进
- 随着功能迭代更新文档
- 建立文档更新检查清单
---
## 🎉 项目里程碑
### ✅ 里程碑 1: 框架基础完成2025年10月
完成了框架基础的4个文档建立了文档体系的坚实基础。
- 00-框架基础概述.md
- 01-Export接口说明.md
- 02-Import接口说明.md
- 03-RPC处理机制.md
**成果**: 开发者可以理解友乐平台架构和三文件架构机制
### ✅ 里程碑 2: 核心服务文档2025年10月
完成了游戏核心服务和共享代码模块的详细文档,这是项目中最复杂的部分。
- 04-游戏核心服务.md
- 05-共享代码模块.md包含5166行JingAlgorithm算法详解
**成果**: 开发者可以深入理解游戏核心逻辑和算法实现
### ✅ 里程碑 3: 配置与工具2025年10月15日
完成了规则配置系统和工具模块的详细文档。
- 06-规则配置系统.md~25,000字
- 07-工具模块.md~20,000字
**成果**: 开发者可以理解规则配置解析机制、日志系统和错误处理规范
### 🔄 里程碑 4: 流程与架构(进行中)
正在完善游戏流程和架构总结文档。
- 08-游戏流程概述.md进行中
- 09-代码框架总结.md待开始
**目标**: 开发者可以掌握完整游戏流程和整体架构设计
### ⏳ 里程碑 5: 完整发布(待开始)
完成快速入门指南和文档导航,形成完整文档体系。
- 10-快速入门指南.md
- README.md
**目标**: 新开发者可以在1-2天内快速上手项目
---
## 📅 下一步行动计划
### 当前进行(正在执行)
1. **编写 08-游戏流程概述.md** 🔄
- 分析游戏状态机WAITING → DEALING → JING_DETERMINING → PLAYING → ROUND_END/GAME_END
- 详细说明各阶段流程:准备阶段、发牌阶段、出牌阶段、结算阶段
- 绘制状态转换图和时序图
- 说明玩家操作流程和服务器响应机制
- 预计字数: ~25,000字
- 预计完成时间: 进行中
### 短期计划1-2天内
2. **编写 09-代码框架总结.md**
- 整体架构总结
- 模块依赖关系图
- 设计模式分析
- 扩展点说明
3. **编写 10-快速入门指南.md**
- 环境配置步骤
- 开发调试方法
- 常见问题解答
### 最终完善6-7天内
4. **编写 README.md**
- 文档导航入口
- 快速索引
- 学习路径推荐
5. **文档审核与完善**
- 交叉引用检查
- 代码示例验证
- 格式统一调整
---
## 📈 项目进展统计
### 时间线
- **2025年10月初**: 启动文档编写计划完成框架基础4篇文档
- **2025年10月中旬**: 完成核心服务2篇文档包含最复杂的共享模块文档
- **2025年10月15日**: 完成配置与工具2篇文档进入流程与架构阶段
- **预计2025年10月下旬**: 完成所有14篇文档
### 字数统计
| 文档分类 | 已完成 | 进行中 | 待开始 | 合计 |
|---------|--------|--------|--------|------|
| 框架基础 | 70,000字 (4篇) | - | - | 70,000字 |
| 核心服务 | 90,000字 (3篇) | - | - | 90,000字 |
| 工具开发 | 20,000字 (1篇) | - | - | 20,000字 |
| 流程架构 | - | ~25,000字 (1篇) | ~20,000字 (1篇) | ~45,000字 |
| 入门指南 | - | - | ~20,000字 (2篇) | ~20,000字 |
| **总计** | **180,000字** | **~25,000字** | **~45,000字** | **~250,000字** |
### 质量指标
- ✅ 代码覆盖率: 90%+ (涵盖主要核心文件)
- ✅ 文档深度: 详细级别(包含算法分析和实现细节)
- ✅ 实用性: 高(包含大量代码示例和最佳实践)
- ✅ 可维护性: 良好(结构清晰,便于更新)
## 📝 更新日志
### 2025年10月15日 - 项目完成 🎉
- ✅ 完成 08-游戏流程概述.md25,000字完整游戏流程和状态机
- ✅ 完成 09-代码框架总结.md20,000字架构总结和设计模式
- ✅ 完成 10-快速入门指南.md15,000字调整范围聚焦代码理解
- ✅ 完成 README.md5,000字文档导航和快速索引
- 📊 **全部14篇文档完成总计约245,000字**
- 🎊 **项目完成度: 100%**
### 2025年10月15日早期
- ✅ 完成 05-共享代码模块.md35,000字包含JingAlgorithm等核心算法详解
- ✅ 完成 06-规则配置系统.md25,000字RoomType配置详解
- ✅ 完成 07-工具模块.md20,000字Logger和ErrorHandler详解
- 📊 更新文档编写计划,标记进度和完成度
- 📈 累计完成字数达到 180,000 字
### 2025年10月早期
- ✅ 完成 00-04 框架基础和核心服务文档70,000字
- ✅ 建立文档目录结构
- ✅ 制定文档编写计划
---
## 🙏 致谢
感谢所有参与文档编写和审核的团队成员。这些文档将帮助更多开发者理解和维护进贤麻将项目。