mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-05-08 09:34:30 +08:00
- 更新 Core 与 Core.Abstractions README 的目录映射和 XML 阅读入口 - 重写 Core Abstractions 页面,改为契约边界与最小接入路径说明 - 补充 Core landing page、API 参考入口和 ai-plan 跟踪记录
4.6 KiB
4.6 KiB
title, description
| title | description |
|---|---|
| Core | GFramework.Core 与 GFramework.Core.Abstractions 的运行时入口、采用顺序和 XML 阅读导航。 |
Core
Core 栏目对应 GFramework 的基础运行时层,主要覆盖 GFramework.Core 与 GFramework.Core.Abstractions,以及与之直接相邻的旧版
Command / Query 执行器和新版 CQRS 迁移入口。
如果你第一次接入框架,建议先把这里当作“运行时底座说明”,再按需进入 Game、Godot 或 Source Generators 栏目。
先理解包关系
GeWuYou.GFramework.Core- 基础运行时实现,包含
Architecture、上下文、生命周期、事件、属性、状态、资源、日志、协程、IoC 等能力。
- 基础运行时实现,包含
GeWuYou.GFramework.Core.Abstractions- 对应的契约层,适合只依赖接口、做模块拆分或测试替身。
GeWuYou.GFramework.Cqrs- 推荐给新功能使用的新请求模型运行时。
GeWuYou.GFramework.Game- 在
Core之上叠加游戏层配置、数据、设置、场景与 UI。
- 在
GeWuYou.GFramework.Core.SourceGenerators- 在编译期补齐日志、上下文注入、模块自动注册等样板代码。
如果你只想先把架构跑起来,最小安装组合仍是:
dotnet add package GeWuYou.GFramework.Core
dotnet add package GeWuYou.GFramework.Core.Abstractions
这个栏目应该回答什么
Core 栏目不是旧版“完整框架教程”的镜像,而是当前实现的入口导航。这里的页面按能力域组织:
- 架构与生命周期
- 组件角色与运行时接入
- 旧版命令 / 查询执行器与迁移入口
- 状态、事件与规则
- 运行时支撑能力
- 通用辅助能力
XML 与 API 阅读入口
如果你已经知道模块归属,但想确认公开类型的契约边界,建议按下面顺序阅读:
- 先看模块 README
GFramework.Core/README.md,确认包关系和目录边界 - 再看本栏目对应专题页,确认采用顺序、生命周期与推荐接线方式
- 最后回到源码中的 XML 文档,重点核对这些类型族:
Architecture/IArchitectureContextCommandExecutor/QueryExecutorILogger/ILoggerFactoryIResourceManager/IConfigurationManagerIAsyncKeyLockManager/ITimeProvider
统一入口见 ../api-reference/index.md。
最小接入路径
当前版本的最小运行时入口只有三个关键动作:
- 继承
Architecture - 在
OnInitialize()中注册模型、系统、工具或模块 - 通过
architecture.Context或ContextAwareBase的扩展方法访问上下文
最小示例:
using GFramework.Core.Architectures;
public sealed class CounterArchitecture : Architecture
{
protected override void OnInitialize()
{
RegisterModel(new CounterModel());
RegisterSystem(new CounterSystem());
}
}
对应的完整起步示例见:
新项目如何选择能力
- 只需要基础架构、事件、日志、资源、协程:
- 先停留在
Core
- 先停留在
- 要写新的请求/通知处理流:
- 优先阅读 cqrs
- 要接入游戏内容配置、设置、数据仓库、Scene 或 UI:
- 转到 Game
- 要接入 Godot 节点、场景和项目元数据生成:
- 转到 Godot 与 Source Generators 栏目
推荐阅读顺序
之后再按实际需要进入具体专题页,而不是把 Core 当成一次性读完的大杂烩。
对应模块入口
GFramework.Core/README.mdGFramework.Core.Abstractions/README.mddocs/zh-CN/api-reference/index.md- 仓库根
README.md