docs(zh-cn): 统一站内链接显式扩展名

- 更新教程、最佳实践、Core 与 Godot 页面中的站内 Markdown 链接写法
- 补充文档治理 topic 的恢复点、验证结果与分支阈值指标
This commit is contained in:
gewuyou 2026-04-24 13:10:41 +08:00
parent bf37104c68
commit 64385196d5
22 changed files with 147 additions and 142 deletions

View File

@ -12,12 +12,12 @@
## 当前恢复点 ## 当前恢复点
- 恢复点编号:`DOCUMENTATION-FULL-COVERAGE-GOV-RP-027` - 恢复点编号:`DOCUMENTATION-FULL-COVERAGE-GOV-RP-028`
- 当前阶段:`Phase 5 - Governance Maintenance` - 当前阶段:`Phase 5 - Governance Maintenance`
- 当前焦点: - 当前焦点:
- 继续按 `$gframework-batch-boot 75``origin/main` 分支 diff 阈值做小批量文档治理,本批已收口 `docs/zh-CN/index.md` 与 `tutorials/basic/01-07.md` 的 metadata 缺口 - 继续按 `$gframework-batch-boot 75``origin/main` 分支 diff 阈值做小批量文档治理,本批已收口 `25` 个 `docs/zh-CN` 页面中的站内链接 `.md` / `index.md` 一致性
- 保持 `README.md``docs/**` 公开页面只承载读者需要的采用信息,不再混入 XML inventory、覆盖基线、恢复点或治理批次说明 - 保持 `README.md``docs/**` 公开页面只承载读者需要的采用信息,不再混入 XML inventory、覆盖基线、恢复点或治理批次说明
- 继续优先处理低风险 metadata 缺口、坏链与 Markdown 结构问题,避免跨模块语义改写 - 继续优先处理低风险 metadata 缺口、坏链、README 文档入口对齐与 Markdown 结构问题,避免跨模块语义改写
- 保持 `Game` persistence docs surface 与当前 `README`、源码、`PersistenceTests` 使用同一套 owner / adoption path 叙述 - 保持 `Game` persistence docs surface 与当前 `README`、源码、`PersistenceTests` 使用同一套 owner / adoption path 叙述
- 保持 `GFramework.Godot.SourceGenerators/README.md``docs/zh-CN/tutorials/godot-integration.md` 在生命周期接法上的一致性 - 保持 `GFramework.Godot.SourceGenerators/README.md``docs/zh-CN/tutorials/godot-integration.md` 在生命周期接法上的一致性
- 保持 active tracking / trace 只承载当前恢复入口,把阶段细节留在 `archive/` - 保持 active tracking / trace 只承载当前恢复入口,把阶段细节留在 `archive/`
@ -25,7 +25,7 @@
## 当前状态摘要 ## 当前状态摘要
- `Core``Ecs.Arch``Cqrs``Game``Godot` 五个模块族当前都已有 README / landing / topic / API 参考层级的已验证入口。 - `Core``Ecs.Arch``Cqrs``Game``Godot` 五个模块族当前都已有 README / landing / topic / API 参考层级的已验证入口。
- `2026-04-24``origin/main``a8447a6``2026-04-24T12:53:39+08:00`)为 batch baseline 时,当前分支累计 diff `0` 个文件;本批 write set 聚焦 `8` 个文档页面与 `2``ai-plan` 入口文件,预计提交后分支 diff 为 `10 / 75` 个 changed files。 - `2026-04-24``origin/main``a8447a6``2026-04-24T12:53:39+08:00`)为 batch baseline 时,当前分支累计 diff `RP-027` 提交后为 `10` 个文件;本批 write set 额外覆盖 `25``docs/zh-CN` 页面与 `2``ai-plan` 入口文件,提交后分支 diff 为 `29 / 75` 个 changed files。
- `2026-04-24` 使用 `$gframework-pr-review` 抓取 PR `#282` 后,确认 latest head commit - `2026-04-24` 使用 `$gframework-pr-review` 抓取 PR `#282` 后,确认 latest head commit
`982249151ecf8acdff3e62e664034bf95dfacd75` 当前仍有 `3` 条 CodeRabbit 与 `1` 条 Greptile open thread4 条建议均已在本地复核并纳入当前恢复点。 `982249151ecf8acdff3e62e664034bf95dfacd75` 当前仍有 `3` 条 CodeRabbit 与 `1` 条 Greptile open thread4 条建议均已在本地复核并纳入当前恢复点。
- 本轮 PR follow-up 仅收口仍然成立的 review 项: - 本轮 PR follow-up 仅收口仍然成立的 review 项:
@ -33,6 +33,7 @@
- 将 `docs/zh-CN/core/context.md` 的标题本地化为中文读者友好的写法 - 将 `docs/zh-CN/core/context.md` 的标题本地化为中文读者友好的写法
- 统一 `docs/zh-CN/troubleshooting.md``/zh-CN/core/architecture``/zh-CN/faq``.md` 链接写法 - 统一 `docs/zh-CN/troubleshooting.md``/zh-CN/core/architecture``/zh-CN/faq``.md` 链接写法
- 本批次补齐了 `docs/zh-CN/index.md``description`,以及 `docs/zh-CN/tutorials/basic/01-07.md``title` / `description`,让首页和基础教程章节页拥有完整 frontmatter metadata。 - 本批次补齐了 `docs/zh-CN/index.md``description`,以及 `docs/zh-CN/tutorials/basic/01-07.md``title` / `description`,让首页和基础教程章节页拥有完整 frontmatter metadata。
- 本批次统一将教程、最佳实践、Core、Godot 页面里缺显式扩展名的站内 Markdown 链接补齐为 `.md``index.md`,避免目录链接、绝对路径旧写法与 VitePress 构建解析分叉。
- `Game` persistence docs surface 当前以 `docs/zh-CN/game/data.md``storage.md``serialization.md``setting.md` - `Game` persistence docs surface 当前以 `docs/zh-CN/game/data.md``storage.md``serialization.md``setting.md`
作为最小巡检集合;若后续 README、runtime public API 或 `PersistenceTests` 变动,应优先复核这一组页面。 作为最小巡检集合;若后续 README、runtime public API 或 `PersistenceTests` 变动,应优先复核这一组页面。
- `Godot` runtime 与 generator 入口当前以 `GFramework.Godot/README.md` - `Godot` runtime 与 generator 入口当前以 `GFramework.Godot/README.md`
@ -74,11 +75,15 @@
- 结果:通过;当前带 frontmatter 的 `docs/zh-CN` 页面已无 `title` / `description` 缺口。 - 结果:通过;当前带 frontmatter 的 `docs/zh-CN` 页面已无 `title` / `description` 缺口。
- `2026-04-24` `bun run build`(工作目录:`docs/` - `2026-04-24` `bun run build`(工作目录:`docs/`
- 结果:通过;首页与基础教程 metadata 补齐后站点仍可正常构建,仅保留既有大 chunk warning。 - 结果:通过;首页与基础教程 metadata 补齐后站点仍可正常构建,仅保留既有大 chunk warning。
- `2026-04-24` `python3 - <<'PY' ...`(扫描 `docs/zh-CN/**/*.md` 中以 `./``../``/zh-CN/` 开头且未带扩展名的 Markdown 链接)
- 结果:通过;当前 `docs/zh-CN` 站内 Markdown 链接已无缺失扩展名的命中。
- `2026-04-24` `bun run build`(工作目录:`docs/`
- 结果:通过;`25` 个页面的站内链接补齐为显式 `.md` / `index.md` 后站点仍可正常构建,仅保留既有大 chunk warning。
## 下一步 ## 下一步
1. 推送本批次 commit 后,再次执行 `$gframework-pr-review`,确认 PR `#282` 的 unresolved review threads 是否已在新 head commit 上消失。 1. 若继续执行 `$gframework-batch-boot 75`,优先盘点模块 `README.md``docs/index.md` 与文档落地页之间仍未对齐的文档入口、BOM 与旧链接写法
2. 若继续执行 `$gframework-batch-boot 75`,优先盘点 `docs/zh-CN` 中仍缺完整 frontmatter 的页面,并按模块或教程小批次补齐 metadata 2. 推送当前批次 commit 后,再次执行 `$gframework-pr-review`,确认 PR `#282` 的 unresolved review threads 是否已在新 head commit 上消失
3. 若后续分支继续调整 `Game` persistence runtime、README 或公共 API优先复核 `docs/zh-CN/game/data.md` 3. 若后续分支继续调整 `Game` persistence runtime、README 或公共 API优先复核 `docs/zh-CN/game/data.md`
`storage.md``serialization.md``setting.md` 与 landing page 是否仍保持同一套职责边界。 `storage.md``serialization.md``setting.md` 与 landing page 是否仍保持同一套职责边界。
4. 若后续分支继续调整 `Godot` generator 接法,优先复核 `GFramework.Godot.SourceGenerators/README.md` 4. 若后续分支继续调整 `Godot` generator 接法,优先复核 `GFramework.Godot.SourceGenerators/README.md`

View File

@ -2,28 +2,28 @@
## 2026-04-24 ## 2026-04-24
### 当前恢复点RP-027 ### 当前恢复点RP-028
- 以 `origin/main``a8447a6``2026-04-24T12:53:39+08:00`)为 `$gframework-batch-boot 75` baseline确认批次开始时当前分支累计 diff 为 `0` 个文件。 - 以 `origin/main``a8447a6``2026-04-24T12:53:39+08:00`)为 `$gframework-batch-boot 75` baseline确认 `RP-027` 提交后的当前分支累计 diff 为 `10` 个文件。
- 选择“frontmatter metadata 缺口”作为本批次低风险切片,不继续扩大到正文语义改写或跨模块文档重写 - 选择“站内 Markdown 链接显式扩展名统一”作为本批次低风险切片集中处理教程、最佳实践、Core 与 Godot 页面中的目录链接和缺 `.md` 的旧写法
- 本批次补齐了 `docs/zh-CN/index.md``description`,以及 `docs/zh-CN/tutorials/basic/01-07.md``title` / `description`。 - 本批次修改了 `25``docs/zh-CN` 页面,把 `./``../``/zh-CN/` 开头的站内 Markdown 链接统一补齐为显式 `.md``index.md`。
### 当前决策RP-027 ### 当前决策RP-028
- 当 branch diff 明显低于 `75` 文件阈值时,优先消化低风险 metadata / 链接 / Markdown 结构缺口,避免在同一批次混入高语义成本的文案重写。 - 当 branch diff 仍显著低于 `75` 文件阈值时,继续优先消化低风险链接规范化和 README / landing page 对齐问题,不在同一批次混入高语义重写。
- 构建失败优先视为机械链接转换回归,先修复批量规则副作用再继续,而不是带着失效链接进入后续批次。
- active `ai-plan` 入口继续保持轻量只记录当前恢复点、batch metric、验证结果与下一批候选项。 - active `ai-plan` 入口继续保持轻量只记录当前恢复点、batch metric、验证结果与下一批候选项。
- 当前 WSL 会话继续使用显式 `--git-dir` / `--work-tree` 绑定执行 Git避免 `git.exe` 失效带来的路径问题。
### 当前验证RP-027 ### 当前验证RP-028
- frontmatter 巡检: - 站内链接巡检:
- `python3 - <<'PY' ...`(扫描 `docs/zh-CN/**/*.md` frontmatter 是否缺 `title` / `description` - `python3 - <<'PY' ...`(扫描 `docs/zh-CN/**/*.md` 中以 `./``../``/zh-CN/` 开头且未带扩展名的 Markdown 链接
- 结果:通过;当前带 frontmatter 的 `docs/zh-CN` 页面已无 `title` / `description` 缺口 - 结果:通过;当前 `docs/zh-CN` 站内 Markdown 链接已无缺失扩展名的命中
- 站点构建: - 站点构建:
- `bun run build`(工作目录:`docs/` - `bun run build`(工作目录:`docs/`
- 结果:通过;首页与基础教程 metadata 补齐后站点仍可正常构建,仅保留既有大 chunk warning。 - 结果:通过;统一 `25` 个页面的站内链接后站点仍可正常构建,仅保留既有大 chunk warning。
- 当前 stop-condition metric - 当前 stop-condition metric
- 提交前工作树 write set 为 `10` 个文件(`8` 个文档页面 + `2``ai-plan` 入口);本批次提交后分支 diff 将提升为 `10 / 75` 个 changed files。 - 本批次 write set 为 `27` 个文件(`25` 个文档页面 + `2``ai-plan` 入口);本批次提交后分支 diff `29 / 75` 个 changed files。
### 归档指针 ### 归档指针
@ -35,5 +35,5 @@
### 下一步 ### 下一步
1. 推送本批次 commit 后,再次执行 `$gframework-pr-review`,确认 PR `#282` 的 unresolved review threads 是否已在新 head commit 上消失 1. 若继续执行 `$gframework-batch-boot 75`,优先盘点模块 `README.md``docs/index.md` 与文档落地页之间仍未对齐的文档入口、BOM 与旧链接写法
2. 若继续执行 `$gframework-batch-boot 75`,优先盘点 `docs/zh-CN` 中仍缺完整 frontmatter 的页面,并按模块或教程小批次补齐 metadata 2. 推送本批次 commit 后,再次执行 `$gframework-pr-review`,确认 PR `#282` 的 unresolved review threads 是否已在新 head commit 上消失

View File

@ -3432,12 +3432,12 @@ public void GetPlayerStatsQuery_ShouldReturnCorrectStats()
### 相关资源 ### 相关资源
- [架构核心文档](/zh-CN/core/architecture) - [架构核心文档](/zh-CN/core/architecture.md)
- [命令模式文档](/zh-CN/core/command) - [命令模式文档](/zh-CN/core/command.md)
- [查询模式文档](/zh-CN/core/query) - [查询模式文档](/zh-CN/core/query.md)
- [事件系统文档](/zh-CN/core/events) - [事件系统文档](/zh-CN/core/events.md)
- [状态机文档](/zh-CN/core/state-machine) - [状态机文档](/zh-CN/core/state-machine.md)
- [IoC 容器文档](/zh-CN/core/ioc) - [IoC 容器文档](/zh-CN/core/ioc.md)
记住,好的架构不是一蹴而就的,需要持续的学习、实践和改进。 记住,好的架构不是一蹴而就的,需要持续的学习、实践和改进。

View File

@ -970,10 +970,10 @@ public class DeviceProfiler
## 相关文档 ## 相关文档
- [资源管理系统](/zh-CN/core/resource) - 资源管理详细说明 - [资源管理系统](/zh-CN/core/resource.md) - 资源管理详细说明
- [对象池系统](/zh-CN/core/pool) - 对象池优化 - [对象池系统](/zh-CN/core/pool.md) - 对象池优化
- [协程系统](/zh-CN/core/coroutine) - 异步操作优化 - [协程系统](/zh-CN/core/coroutine.md) - 异步操作优化
- [架构模式最佳实践](/zh-CN/best-practices/architecture-patterns) - 架构设计 - [架构模式最佳实践](/zh-CN/best-practices/architecture-patterns.md) - 架构设计
--- ---

View File

@ -501,7 +501,7 @@ Parallel.For(0, 10, i =>
## 相关文档 ## 相关文档
- [对象池系统](/zh-CN/core/pool) - 结合对象池复用资源 - [对象池系统](/zh-CN/core/pool.md) - 结合对象池复用资源
- [协程系统](/zh-CN/core/coroutine) - 异步加载资源 - [协程系统](/zh-CN/core/coroutine.md) - 异步加载资源
- [Godot 扩展](/zh-CN/godot/extensions) - Godot 引擎的资源管理 - [Godot 扩展](/zh-CN/godot/extensions.md) - Godot 引擎的资源管理
- [资源管理最佳实践](/zh-CN/tutorials/resource-management) - 详细教程 - [资源管理最佳实践](/zh-CN/tutorials/resource-management.md) - 详细教程

View File

@ -576,7 +576,7 @@ await stateMachine.GoBackAsync();
## 相关文档 ## 相关文档
- [生命周期管理](/zh-CN/core/lifecycle) - 状态的初始化和销毁 - [生命周期管理](/zh-CN/core/lifecycle.md) - 状态的初始化和销毁
- [事件系统](/zh-CN/core/events) - 状态变更通知 - [事件系统](/zh-CN/core/events.md) - 状态变更通知
- [协程系统](/zh-CN/core/coroutine) - 异步状态操作 - [协程系统](/zh-CN/core/coroutine.md) - 异步状态操作
- [状态机实现教程](/zh-CN/tutorials/state-machine-tutorial) - 完整示例 - [状态机实现教程](/zh-CN/tutorials/state-machine-tutorial.md) - 完整示例

View File

@ -730,7 +730,7 @@ foreach (var reason in reasons)
## 相关文档 ## 相关文档
- [Godot 架构集成](/zh-CN/godot/architecture) - Godot 架构基础 - [Godot 架构集成](/zh-CN/godot/architecture.md) - Godot 架构基础
- [Godot 场景系统](/zh-CN/godot/scene) - Godot 场景集成 - [Godot 场景系统](/zh-CN/godot/scene.md) - Godot 场景集成
- [Godot UI 系统](/zh-CN/godot/ui) - Godot UI 集成 - [Godot UI 系统](/zh-CN/godot/ui.md) - Godot UI 集成
- [Godot 扩展](/zh-CN/godot/extensions) - Godot 扩展方法 - [Godot 扩展](/zh-CN/godot/extensions.md) - Godot 扩展方法

View File

@ -678,7 +678,7 @@ GD.Print($"使用池: {stopwatch.ElapsedMilliseconds}ms");
## 相关文档 ## 相关文档
- [对象池系统](/zh-CN/core/pool) - 核心对象池实现 - [对象池系统](/zh-CN/core/pool.md) - 核心对象池实现
- [Godot 架构集成](/zh-CN/godot/architecture) - Godot 架构基础 - [Godot 架构集成](/zh-CN/godot/architecture.md) - Godot 架构基础
- [Godot 场景系统](/zh-CN/godot/scene) - Godot 场景管理 - [Godot 场景系统](/zh-CN/godot/scene.md) - Godot 场景管理
- [性能优化](/zh-CN/core/pool) - 性能优化最佳实践 - [性能优化](/zh-CN/core/pool.md) - 性能优化最佳实践

View File

@ -631,7 +631,7 @@ public class LazyResourceRepository<TKey, TResource>
## 相关文档 ## 相关文档
- [数据与存档系统](/zh-CN/game/data) - 数据持久化 - [数据与存档系统](/zh-CN/game/data.md) - 数据持久化
- [Godot 架构集成](/zh-CN/godot/architecture) - Godot 架构基础 - [Godot 架构集成](/zh-CN/godot/architecture.md) - Godot 架构基础
- [Godot 场景系统](/zh-CN/godot/scene) - 场景资源管理 - [Godot 场景系统](/zh-CN/godot/scene.md) - 场景资源管理
- [资源管理系统](/zh-CN/core/resource) - 核心资源管理 - [资源管理系统](/zh-CN/core/resource.md) - 核心资源管理

View File

@ -646,10 +646,10 @@ public override void _Process(double delta)
### 推荐资源 ### 推荐资源
- **GFramework 文档** - **GFramework 文档**
- [Core 核心框架](../../core/) - [Core 核心框架](../../core/index.md)
- [Game 游戏模块](../../game/) - [Game 游戏模块](../../game/index.md)
- [Godot 集成](../../godot/) - [Godot 集成](../../godot/index.md)
- [源码生成器](../../source-generators/) - [源码生成器](../../source-generators/index.md)
- **设计模式** - **设计模式**
- 命令模式Command Pattern - 命令模式Command Pattern

View File

@ -173,10 +173,10 @@ description: 从零开始串联环境准备、项目搭建与核心概念的基
## 🔗 相关资源 ## 🔗 相关资源
- [GFramework 文档首页](../../) - [GFramework 文档首页](../../index.md)
- [Core 核心框架](../../core/) - [Core 核心框架](../../core/index.md)
- [Godot 集成](../../godot/) - [Godot 集成](../../godot/index.md)
- [源码生成器](../../source-generators/) - [源码生成器](../../source-generators/index.md)
## ❓ 遇到问题? ## ❓ 遇到问题?

View File

@ -188,5 +188,5 @@ BlinkCoroutine()
## 下一步 ## 下一步
- Core 侧更完整的 API 说明见 [Core 协程系统](/zh-CN/core/coroutine) - Core 侧更完整的 API 说明见 [Core 协程系统](/zh-CN/core/coroutine.md)
- Godot 集成细节见 [Godot 协程系统](/zh-CN/godot/coroutine) - Godot 集成细节见 [Godot 协程系统](/zh-CN/godot/coroutine.md)

View File

@ -20,9 +20,9 @@ description: 学习如何实现数据版本迁移系统,处理不同版本间
- 已安装 GFramework.Game NuGet 包 - 已安装 GFramework.Game NuGet 包
- 了解 C# 基础语法和接口实现 - 了解 C# 基础语法和接口实现
- 阅读过[快速开始](/zh-CN/getting-started/quick-start) - 阅读过[快速开始](/zh-CN/getting-started/quick-start.md)
- 了解[数据与存档系统](/zh-CN/game/data) - 了解[数据与存档系统](/zh-CN/game/data.md)
- 建议先完成[实现存档系统](/zh-CN/tutorials/save-system)教程 - 建议先完成[实现存档系统](/zh-CN/tutorials/save-system.md)教程
## 为什么需要数据迁移 ## 为什么需要数据迁移
@ -647,9 +647,9 @@ MyGame/
恭喜!你已经实现了一个完整的数据版本迁移系统。接下来可以学习: 恭喜!你已经实现了一个完整的数据版本迁移系统。接下来可以学习:
- [实现存档系统](/zh-CN/tutorials/save-system) - 结合存档系统使用迁移 - [实现存档系统](/zh-CN/tutorials/save-system.md) - 结合存档系统使用迁移
- [Godot 完整项目搭建](/zh-CN/tutorials/godot-complete-project) - 在实际项目中应用 - [Godot 完整项目搭建](/zh-CN/tutorials/godot-complete-project.md) - 在实际项目中应用
- [数据与存档系统](/zh-CN/game/data) - 深入了解数据系统 - [数据与存档系统](/zh-CN/game/data.md) - 深入了解数据系统
## 最佳实践 ## 最佳实践
@ -780,6 +780,6 @@ public async Task<List<ISettingsSection>> MigrateBatchAsync(
## 相关文档 ## 相关文档
- [数据与存档系统](/zh-CN/game/data) - 数据系统详细说明 - [数据与存档系统](/zh-CN/game/data.md) - 数据系统详细说明
- [实现存档系统](/zh-CN/tutorials/save-system) - 存档系统教程 - [实现存档系统](/zh-CN/tutorials/save-system.md) - 存档系统教程
- [架构系统](/zh-CN/core/architecture) - 架构设计原则 - [架构系统](/zh-CN/core/architecture.md) - 架构设计原则

View File

@ -20,7 +20,7 @@ description: 学习如何在实际项目中使用 Option、Result 和管道操
- 已安装 GFramework.Core NuGet 包 - 已安装 GFramework.Core NuGet 包
- 了解 C# 基础语法和泛型 - 了解 C# 基础语法和泛型
- 阅读过[快速开始](/zh-CN/getting-started/quick-start) - 阅读过[快速开始](/zh-CN/getting-started/quick-start.md)
- 了解 Lambda 表达式和 LINQ - 了解 Lambda 表达式和 LINQ
## 步骤 1使用 Option 处理可空值 ## 步骤 1使用 Option 处理可空值
@ -811,12 +811,12 @@ class Program
恭喜!你已经掌握了函数式编程的核心技术。接下来可以学习: 恭喜!你已经掌握了函数式编程的核心技术。接下来可以学习:
- [使用协程系统](/zh-CN/tutorials/coroutine-tutorial) - 结合函数式编程和协程 - [使用协程系统](/zh-CN/tutorials/coroutine-tutorial.md) - 结合函数式编程和协程
- [实现状态机](/zh-CN/tutorials/state-machine-tutorial) - 在状态机中应用函数式模式 - [实现状态机](/zh-CN/tutorials/state-machine-tutorial.md) - 在状态机中应用函数式模式
- [资源管理最佳实践](/zh-CN/tutorials/resource-management) - 使用 Result 处理资源加载 - [资源管理最佳实践](/zh-CN/tutorials/resource-management.md) - 使用 Result 处理资源加载
## 相关文档 ## 相关文档
- [扩展方法](/zh-CN/core/extensions) - 更多函数式扩展方法 - [扩展方法](/zh-CN/core/extensions.md) - 更多函数式扩展方法
- [架构组件](/zh-CN/core/architecture) - 在架构中使用函数式编程 - [架构组件](/zh-CN/core/architecture.md) - 在架构中使用函数式编程
- [最佳实践](/zh-CN/best-practices/architecture-patterns) - 函数式编程最佳实践 - [最佳实践](/zh-CN/best-practices/architecture-patterns.md) - 函数式编程最佳实践

View File

@ -22,9 +22,9 @@ description: 从零开始使用 GFramework 构建一个完整的 Godot 游戏项
- 已安装 .NET SDK 8.0+ - 已安装 .NET SDK 8.0+
- 了解 C# 和 Godot 基础 - 了解 C# 和 Godot 基础
- 阅读过前面的教程: - 阅读过前面的教程:
- [使用协程系统](/zh-CN/tutorials/coroutine-tutorial) - [使用协程系统](/zh-CN/tutorials/coroutine-tutorial.md)
- [实现状态机](/zh-CN/tutorials/state-machine-tutorial) - [实现状态机](/zh-CN/tutorials/state-machine-tutorial.md)
- [实现存档系统](/zh-CN/tutorials/save-system) - [实现存档系统](/zh-CN/tutorials/save-system.md)
## 项目概述 ## 项目概述
@ -805,7 +805,7 @@ public partial class GameScene : Node2D, IController
## 相关文档 ## 相关文档
- [Godot 架构集成](/zh-CN/godot/architecture) - 架构详细说明 - [Godot 架构集成](/zh-CN/godot/architecture.md) - 架构详细说明
- [Godot 场景系统](/zh-CN/godot/scene) - 场景管理 - [Godot 场景系统](/zh-CN/godot/scene.md) - 场景管理
- [Godot UI 系统](/zh-CN/godot/ui) - UI 管理 - [Godot UI 系统](/zh-CN/godot/ui.md) - UI 管理
- [Godot 扩展](/zh-CN/godot/extensions) - 扩展功能 - [Godot 扩展](/zh-CN/godot/extensions.md) - 扩展功能

View File

@ -9,7 +9,7 @@ description: 汇总 GFramework 的基础与进阶教程入口,帮助按学习
## 📚 可用教程 ## 📚 可用教程
### [基础教程](./basic/) ### [基础教程](./basic/index.md)
> 从零开始学习 GFramework通过构建一个完整的计数器应用逐步掌握框架的核心概念。 > 从零开始学习 GFramework通过构建一个完整的计数器应用逐步掌握框架的核心概念。
@ -169,7 +169,7 @@ description: 汇总 GFramework 的基础与进阶教程入口,帮助按学习
### 善用资源 ### 善用资源
- **查阅文档**:结合 [Core 核心框架](../core/) 和 [Godot 集成](../godot/) 文档 - **查阅文档**:结合 [Core 核心框架](../core/index.md) 和 [Godot 集成](../godot/index.md) 文档
- **查看示例**:参考框架附带的示例项目 - **查看示例**:参考框架附带的示例项目
- **社区交流**:遇到问题时查看 GitHub Issues 或参与讨论 - **社区交流**:遇到问题时查看 GitHub Issues 或参与讨论
@ -193,11 +193,11 @@ description: 汇总 GFramework 的基础与进阶教程入口,帮助按学习
## 🔗 相关资源 ## 🔗 相关资源
- [入门指南](../getting-started/) - 快速了解框架和安装配置 - [入门指南](../getting-started/index.md) - 快速了解框架和安装配置
- [Core 核心框架](../core/) - 深入学习核心概念 - [Core 核心框架](../core/index.md) - 深入学习核心概念
- [Game 模块](../game/) - 游戏特定功能文档 - [Game 模块](../game/index.md) - 游戏特定功能文档
- [Godot 集成](../godot/) - Godot 特定功能参考 - [Godot 集成](../godot/index.md) - Godot 特定功能参考
- [源码生成器](../source-generators/) - 自动化代码生成工具 - [源码生成器](../source-generators/index.md) - 自动化代码生成工具
--- ---
@ -236,7 +236,7 @@ A: 根据学习深度不同:
<div style="text-align: center; margin: 2rem 0;"> <div style="text-align: center; margin: 2rem 0;">
[开始基础教程 →](./basic/) [开始基础教程 →](./basic/index.md)
</div> </div>

View File

@ -20,8 +20,8 @@ description: 学习如何使用 GFramework 组织和管理大型游戏项目
- 已安装 GFramework.Core 和 GFramework.Game NuGet 包 - 已安装 GFramework.Core 和 GFramework.Game NuGet 包
- 了解 C# 基础语法和面向对象编程 - 了解 C# 基础语法和面向对象编程
- 阅读过[快速开始](/zh-CN/getting-started/quick-start) - 阅读过[快速开始](/zh-CN/getting-started/quick-start.md)
- 了解[架构组件](/zh-CN/core/architecture)和[模块系统](/zh-CN/core/architecture#模块系统) - 了解[架构组件](/zh-CN/core/architecture.md)和[模块系统](/zh-CN/core/architecture.md#模块系统)
## 步骤 1: 项目结构设计 ## 步骤 1: 项目结构设计
@ -1628,14 +1628,14 @@ namespace MyGame
恭喜!你已经掌握了大型项目的组织方法。接下来可以学习: 恭喜!你已经掌握了大型项目的组织方法。接下来可以学习:
- [Godot 完整项目](/zh-CN/tutorials/godot-complete-project) - 在 Godot 中应用这些原则 - [Godot 完整项目](/zh-CN/tutorials/godot-complete-project.md) - 在 Godot 中应用这些原则
- [资源管理最佳实践](/zh-CN/tutorials/resource-management) - 管理大型项目的资源 - [资源管理最佳实践](/zh-CN/tutorials/resource-management.md) - 管理大型项目的资源
- [实现存档系统](/zh-CN/tutorials/save-system) - 保存复杂的游戏状态 - [实现存档系统](/zh-CN/tutorials/save-system.md) - 保存复杂的游戏状态
- [架构模式最佳实践](/zh-CN/best-practices/architecture-patterns) - 高级架构模式 - [架构模式最佳实践](/zh-CN/best-practices/architecture-patterns.md) - 高级架构模式
## 相关文档 ## 相关文档
- [架构组件](/zh-CN/core/architecture) - 架构系统详解 - [架构组件](/zh-CN/core/architecture.md) - 架构系统详解
- [模块系统](/zh-CN/core/architecture#模块系统) - 模块化设计 - [模块系统](/zh-CN/core/architecture.md#模块系统) - 模块化设计
- [依赖注入](/zh-CN/core/ioc) - IoC 容器使用 - [依赖注入](/zh-CN/core/ioc.md) - IoC 容器使用
- [最佳实践](/zh-CN/best-practices/) - 开发最佳实践 - [最佳实践](/zh-CN/best-practices/index.md) - 开发最佳实践

View File

@ -20,8 +20,8 @@ description: 学习如何使用暂停系统实现多层暂停管理和游戏流
- 已安装 GFramework.Core NuGet 包 - 已安装 GFramework.Core NuGet 包
- 了解 C# 基础语法和接口实现 - 了解 C# 基础语法和接口实现
- 阅读过[快速开始](/zh-CN/getting-started/quick-start) - 阅读过[快速开始](/zh-CN/getting-started/quick-start.md)
- 了解[架构组件](/zh-CN/core/architecture)基础 - 了解[架构组件](/zh-CN/core/architecture.md)基础
## 步骤 1注册暂停管理器 ## 步骤 1注册暂停管理器
@ -1120,14 +1120,14 @@ class Program
恭喜!你已经掌握了暂停系统的使用。接下来可以学习: 恭喜!你已经掌握了暂停系统的使用。接下来可以学习:
- [使用协程系统](/zh-CN/tutorials/coroutine-tutorial) - 在暂停状态下控制协程 - [使用协程系统](/zh-CN/tutorials/coroutine-tutorial.md) - 在暂停状态下控制协程
- [实现状态机](/zh-CN/tutorials/state-machine-tutorial) - 结合状态机管理游戏流程 - [实现状态机](/zh-CN/tutorials/state-machine-tutorial.md) - 结合状态机管理游戏流程
- [事件系统](/zh-CN/core/events) - 使用事件响应暂停状态变化 - [事件系统](/zh-CN/core/events.md) - 使用事件响应暂停状态变化
## 相关文档 ## 相关文档
- [架构组件](/zh-CN/core/architecture) - 架构基础 - [架构组件](/zh-CN/core/architecture.md) - 架构基础
- [Utility 层](/zh-CN/core/utility) - Utility 详细说明 - [Utility 层](/zh-CN/core/utility.md) - Utility 详细说明
- [生命周期管理](/zh-CN/core/lifecycle) - 组件生命周期 - [生命周期管理](/zh-CN/core/lifecycle.md) - 组件生命周期
- [扩展方法](/zh-CN/core/extensions) - 便捷的扩展方法 - [扩展方法](/zh-CN/core/extensions.md) - 便捷的扩展方法

View File

@ -20,8 +20,8 @@ description: 学习如何高效管理游戏资源,避免内存泄漏和性能
- 已安装 GFramework.Core NuGet 包 - 已安装 GFramework.Core NuGet 包
- 了解 C# 基础语法和 async/await - 了解 C# 基础语法和 async/await
- 阅读过[快速开始](/zh-CN/getting-started/quick-start) - 阅读过[快速开始](/zh-CN/getting-started/quick-start.md)
- 了解[协程系统](/zh-CN/core/coroutine) - 了解[协程系统](/zh-CN/core/coroutine.md)
## 步骤 1创建资源类型和加载器 ## 步骤 1创建资源类型和加载器
@ -802,13 +802,13 @@ MyGame/
恭喜!你已经掌握了资源管理的最佳实践。接下来可以学习: 恭喜!你已经掌握了资源管理的最佳实践。接下来可以学习:
- [使用协程系统](/zh-CN/tutorials/coroutine-tutorial) - 在协程中加载资源 - [使用协程系统](/zh-CN/tutorials/coroutine-tutorial.md) - 在协程中加载资源
- [实现状态机](/zh-CN/tutorials/state-machine-tutorial) - 在状态切换时管理资源 - [实现状态机](/zh-CN/tutorials/state-machine-tutorial.md) - 在状态切换时管理资源
- [实现存档系统](/zh-CN/tutorials/save-system) - 保存和加载游戏数据 - [实现存档系统](/zh-CN/tutorials/save-system.md) - 保存和加载游戏数据
## 相关文档 ## 相关文档
- [资源管理系统](/zh-CN/core/resource) - 资源系统详细说明 - [资源管理系统](/zh-CN/core/resource.md) - 资源系统详细说明
- [对象池系统](/zh-CN/core/pool) - 结合对象池复用资源 - [对象池系统](/zh-CN/core/pool.md) - 结合对象池复用资源
- [协程系统](/zh-CN/core/coroutine) - 异步加载资源 - [协程系统](/zh-CN/core/coroutine.md) - 异步加载资源
- [System 层](/zh-CN/core/system) - System 详细说明 - [System 层](/zh-CN/core/system.md) - System 详细说明

View File

@ -20,8 +20,8 @@ description: 学习如何实现完整的游戏存档系统,支持多槽位和
- 已安装 GFramework.Game NuGet 包 - 已安装 GFramework.Game NuGet 包
- 了解 C# 基础语法和 async/await - 了解 C# 基础语法和 async/await
- 阅读过[快速开始](/zh-CN/getting-started/quick-start) - 阅读过[快速开始](/zh-CN/getting-started/quick-start.md)
- 了解[数据与存档系统](/zh-CN/game/data) - 了解[数据与存档系统](/zh-CN/game/data.md)
## 步骤 1定义存档数据结构 ## 步骤 1定义存档数据结构
@ -954,13 +954,13 @@ MyGame/
恭喜!你已经实现了一个完整的存档系统。接下来可以学习: 恭喜!你已经实现了一个完整的存档系统。接下来可以学习:
- [Godot 完整项目搭建](/zh-CN/tutorials/godot-complete-project) - 在 Godot 中使用存档系统 - [Godot 完整项目搭建](/zh-CN/tutorials/godot-complete-project.md) - 在 Godot 中使用存档系统
- [使用协程系统](/zh-CN/tutorials/coroutine-tutorial) - 异步加载存档 - [使用协程系统](/zh-CN/tutorials/coroutine-tutorial.md) - 异步加载存档
- [数据与存档系统](/zh-CN/game/data) - 数据系统详细说明 - [数据与存档系统](/zh-CN/game/data.md) - 数据系统详细说明
## 相关文档 ## 相关文档
- [数据与存档系统](/zh-CN/game/data) - 数据系统详细说明 - [数据与存档系统](/zh-CN/game/data.md) - 数据系统详细说明
- [对象池系统](/zh-CN/core/pool) - 结合对象池复用资源 - [对象池系统](/zh-CN/core/pool.md) - 结合对象池复用资源
- [协程系统](/zh-CN/core/coroutine) - 异步加载资源 - [协程系统](/zh-CN/core/coroutine.md) - 异步加载资源
- [System 层](/zh-CN/core/system) - System 详细说明 - [System 层](/zh-CN/core/system.md) - System 详细说明

View File

@ -20,8 +20,8 @@ description: 学习如何使用状态机系统管理游戏状态和场景切换
- 已安装 GFramework.Core NuGet 包 - 已安装 GFramework.Core NuGet 包
- 了解 C# 基础语法和 async/await - 了解 C# 基础语法和 async/await
- 阅读过[快速开始](/zh-CN/getting-started/quick-start) - 阅读过[快速开始](/zh-CN/getting-started/quick-start.md)
- 了解[生命周期管理](/zh-CN/core/lifecycle) - 了解[生命周期管理](/zh-CN/core/lifecycle.md)
## 步骤 1定义游戏状态 ## 步骤 1定义游戏状态
@ -734,13 +734,13 @@ MyGame/
恭喜!你已经掌握了状态机系统的使用。接下来可以学习: 恭喜!你已经掌握了状态机系统的使用。接下来可以学习:
- [使用协程系统](/zh-CN/tutorials/coroutine-tutorial) - 在状态中使用协程 - [使用协程系统](/zh-CN/tutorials/coroutine-tutorial.md) - 在状态中使用协程
- [资源管理最佳实践](/zh-CN/tutorials/resource-management) - 在加载状态中管理资源 - [资源管理最佳实践](/zh-CN/tutorials/resource-management.md) - 在加载状态中管理资源
- [实现存档系统](/zh-CN/tutorials/save-system) - 保存和恢复游戏状态 - [实现存档系统](/zh-CN/tutorials/save-system.md) - 保存和恢复游戏状态
## 相关文档 ## 相关文档
- [状态机系统](/zh-CN/core/state-machine) - 状态机详细说明 - [状态机系统](/zh-CN/core/state-machine.md) - 状态机详细说明
- [生命周期管理](/zh-CN/core/lifecycle) - 组件生命周期 - [生命周期管理](/zh-CN/core/lifecycle.md) - 组件生命周期
- [System 层](/zh-CN/core/system) - System 详细说明 - [System 层](/zh-CN/core/system.md) - System 详细说明
- [架构组件](/zh-CN/core/architecture) - 架构基础 - [架构组件](/zh-CN/core/architecture.md) - 架构基础

View File

@ -22,8 +22,8 @@ description: 学习如何为 GFramework 项目编写单元测试
- 已安装 .NET SDK 8.0 或更高版本 - 已安装 .NET SDK 8.0 或更高版本
- 了解 C# 基础语法 - 了解 C# 基础语法
- 熟悉 xUnit 或 NUnit 测试框架 - 熟悉 xUnit 或 NUnit 测试框架
- 阅读过[快速开始](/zh-CN/getting-started/quick-start) - 阅读过[快速开始](/zh-CN/getting-started/quick-start.md)
- 了解[架构系统](/zh-CN/core/architecture) - 了解[架构系统](/zh-CN/core/architecture.md)
## 步骤 1创建测试项目 ## 步骤 1创建测试项目
@ -1143,5 +1143,5 @@ public void CalculateBonus_Should_Return_Double(int input, int expected)
- [NUnit 官方文档](https://docs.nunit.org/) - [NUnit 官方文档](https://docs.nunit.org/)
- [Moq 快速入门](https://github.com/moq/moq4/wiki/Quickstart) - [Moq 快速入门](https://github.com/moq/moq4/wiki/Quickstart)
- [架构设计模式](/zh-CN/best-practices/architecture-patterns) - [架构设计模式](/zh-CN/best-practices/architecture-patterns.md)
- [性能优化最佳实践](/zh-CN/best-practices/performance) - [性能优化最佳实践](/zh-CN/best-practices/performance.md)