【重构】整理文档目录结构,创建5个分类文件夹,拆分业务开发指南为8个独立文档,添加README入口导航

This commit is contained in:
Shiliang
2026-05-22 10:41:34 +08:00
parent 4139f8d392
commit e4198ddd16
13 changed files with 710 additions and 567 deletions

View File

@@ -0,0 +1,106 @@
# StrayFog 框架开发规范指南
## 一、开发前准备
### 1.1 核心概念理解
#### 1.1.1 框架层级关系
```
┌─────────────────────────────────────────────────────────────┐
│ 开发层级视图 │
├─────────────────────────────────────────────────────────────┤
│ 业务层 (你开发的代码) │
│ ├── UI界面、业务逻辑、游戏数据 │
│ │ │
│ │ ┌───────────────────────────────────────────────────┐ │
│ │ │ 核心库 (只读,框架团队维护) │ │
│ │ │ ├── Core: 模拟行为、全局数据 │ │
│ │ │ ├── HF: 资源管理、事件系统、相机管理 │ │
│ │ │ └── General: 状态机、工具类 │ │
│ │ └───────────────────────────────────────────────────┘ │
│ │ │
│ └─────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────┘
```
#### 1.1.2 核心库访问原则
| 原则 | 说明 |
|-----|-----|
| **只读访问** | 核心库代码只可读取,不可修改 |
| **接口优先** | 通过接口访问服务,而非直接实例化实现类 |
| **继承扩展** | 通过继承抽象类实现自定义逻辑 |
| **依赖注入** | 通过管理器获取实例,而非硬编码 |
---
## 二、业务代码结构
### 2.1 目录组织规范
```
Assets/Game/GameHFScripte/GameFunction/
├── Event/ # 消息处理
│ ├── ServerToClient/ # 服务器到客户端消息
│ ├── ClientToClient/ # 客户端内部消息
│ └── Handle/ # 消息处理器
├── GameRoot/ # 框架调用入口
│ ├── HFGameStart.cs # 热更新进入入口
│ ├── HFFunCatalogue.cs # 框架统一调用入口
│ ├── HFFunCatalogue_Function.cs # 功能调用方法
│ └── ...
├── HFDownLoadSubPackage/ # 分包下载
│ ├── HFSubPackageManager.cs # 分包管理器
│ ├── HFGameStartAssetsCheckManager.cs # 资源检查
│ └── ...
├── HFExtends/ # Class扩展方法
│ ├── UI/ # UI扩展
│ ├── Material/ # 材质扩展
│ ├── String/ # 字符串扩展
│ └── ...
├── Logic/ # 游戏主要业务逻辑存放各功能Manager
│ ├── User/ # 用户相关
│ ├── Login/ # 登录系统
│ ├── Fight/ # 战斗系统
│ ├── CardDeck/ # 卡组系统
│ ├── Bag/ # 背包系统
│ └── ...
├── UIWindows/ # UI窗口业务逻辑
│ ├── Login/ # 登录窗口
│ ├── Lobby/ # 大厅窗口
│ ├── Fight/ # 战斗窗口
│ ├── Shop/ # 商店窗口
│ └── ...
├── GameEntity/ # 游戏实体
│ ├── Entity/ # 实体定义
│ ├── EntityPool/ # 实体对象池
│ └── ...
├── SoundManagerPro/ # 音效管理
├── SceneManager/ # 场景管理
├── SDK/ # SDK集成
└── MonoCompent/ # Mono组件
```
### 2.2 文件命名规范
| 文件类型 | 命名规则 | 示例 |
|---------|---------|-----|
| **窗口类** | `XXXWindow.cs` | `LoginWindow.cs` |
| **组件类** | `XXXComponent.cs` | `ItemCellComponent.cs` |
| **管理器类** | `XXXManager.cs` | `UIManager.cs` |
| **数据类** | `XXXData.cs` | `PlayerData.cs` |
| **配置类** | `XXXConfig.cs` | `SkillConfig.cs` |
---
**版本**: v1.0
**生效日期**: 2026年
**适用范围**: GiftGameX项目业务开发人员