【重构】整理文档目录结构,创建5个分类文件夹,拆分业务开发指南为8个独立文档,添加README入口导航
This commit is contained in:
106
02_开发规范/开发规范指南.md
Normal file
106
02_开发规范/开发规范指南.md
Normal 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项目业务开发人员
|
||||
Reference in New Issue
Block a user