diff --git a/docs/zh-CN/core/command.md b/docs/zh-CN/core/command.md index abb6ef0..da17a34 100644 --- a/docs/zh-CN/core/command.md +++ b/docs/zh-CN/core/command.md @@ -151,7 +151,7 @@ public class CombatSystem : AbstractSystem ### 功能说明 -[CommandBus](file:///d:/Project/Rider/GFramework/GFramework.Core/command/CommandBus.cs#L8-L34) 是命令执行的核心组件,负责发送和执行命令。 +`CommandBus` 是命令执行的核心组件,负责发送和执行命令。 **主要方法:** diff --git a/docs/zh-CN/core/events.md b/docs/zh-CN/core/events.md index 5a08c3b..0fa08d5 100644 --- a/docs/zh-CN/core/events.md +++ b/docs/zh-CN/core/events.md @@ -6,7 +6,7 @@ Events 包提供了一套完整的事件系统,实现了观察者模式(Obse ## 核心接口 -### 1. [IEvent](../GFramework.Core.Abstractions/events/IEvent.cs) +### 1. IEvent 基础事件接口,定义了事件注册的基本功能。 @@ -16,7 +16,7 @@ Events 包提供了一套完整的事件系统,实现了观察者模式(Obse IUnRegister Register(Action onEvent); // 注册事件处理函数 ``` -### 2. [IUnRegister](../GFramework.Core.Abstractions/events/IUnRegister.cs) +### 2. IUnRegister 注销接口,用于取消事件注册。 @@ -26,7 +26,7 @@ IUnRegister Register(Action onEvent); // 注册事件处理函数 void UnRegister(); // 执行注销操作 ``` -### 3. [IUnRegisterList](../GFramework.Core.Abstractions/events/IUnRegisterList.cs) +### 3. IUnRegisterList 注销列表接口,用于批量管理注销对象。 @@ -36,7 +36,7 @@ void UnRegister(); // 执行注销操作 IList UnregisterList { get; } // 获取注销列表 ``` -### 4. [IEventBus](../GFramework.Core.Abstractions/events/IEventBus.cs) +### 4. IEventBus 事件总线接口,提供基于类型的事件发送和注册。 @@ -50,7 +50,7 @@ void Send() where T : new(); // 发送事件(自动创建实例 ## 核心类 -### 1. [EasyEvent](EasyEvent.cs) +### 1. EasyEvent 无参事件类,支持注册、注销和触发无参事件。 @@ -73,7 +73,7 @@ onClicked.Trigger(); unregister.UnRegister(); ``` -### 2. [Event``](EasyEvent.cs) +### 2. Event`` 单参数泛型事件类,支持一个参数的事件。 @@ -93,7 +93,7 @@ onScoreChanged.Register(newScore => onScoreChanged.Trigger(100); ``` -### 3. [Event](EasyEvent.cs) +### 3. Event 双参数泛型事件类。 @@ -111,7 +111,7 @@ onDamageDealt.Register((attacker, damage) => onDamageDealt.Trigger("Player", 50); ``` -### 4. [`EasyEvents`](EasyEvents.cs) +### 4. `EasyEvents` 全局事件管理器,提供类型安全的事件注册和获取。 @@ -134,7 +134,7 @@ gameStartEvent.Register(() => gameStartEvent.Trigger(); ``` -### 5. [`EventBus`](EventBus.cs) +### 5. `EventBus` 类型化事件系统,支持基于类型的事件发送和注册。 @@ -160,7 +160,7 @@ eventBus.Send(new PlayerDiedEvent eventBus.Send(); ``` -### 6. [`DefaultUnRegister`](DefaultUnRegister.cs) +### 6. `DefaultUnRegister` 默认注销器实现,封装注销回调。 @@ -174,7 +174,7 @@ var unregister = new DefaultUnRegister(onUnregister); unregister.UnRegister(); ``` -### 7. [`OrEvent`](OrEvent.cs) +### 7. `OrEvent` 事件或运算组合器,当任意一个事件触发时触发。 @@ -193,7 +193,7 @@ onAnyInput.Register(() => }); ``` -### 8. [`UnRegisterList`](UnRegisterList.cs) +### 8. `UnRegisterList` 批量管理注销对象的列表。 @@ -209,7 +209,7 @@ someEvent.Register(OnEvent).AddToUnregisterList(unregisterList); unregisterList.UnRegisterAll(); ``` -### 9. [`ArchitectureEvents`](ArchitectureEvents.cs) +### 9. `ArchitectureEvents` 定义了架构生命周期相关的事件。 diff --git a/docs/zh-CN/core/extensions.md b/docs/zh-CN/core/extensions.md index d0a73b4..e6ec196 100644 --- a/docs/zh-CN/core/extensions.md +++ b/docs/zh-CN/core/extensions.md @@ -6,10 +6,10 @@ Extensions 包提供了一系列扩展方法,简化了框架各个接口的使 ## 扩展方法类别 -### 1. ContextAware 扩展 ([ContextAwareExtensions.cs](ContextAwareExtensions.cs)) +### 1. ContextAware 扩展 (ContextAwareExtensions.cs) -为 [IContextAware](../GFramework.Core.Abstractions/rule/IContextAware.cs) -提供扩展方法,允许直接从实现了 [IContextAware](../GFramework.Core.Abstractions/rule/IContextAware.cs) +为 IContextAware +提供扩展方法,允许直接从实现了 IContextAware 的对象获取架构组件。 #### GetSystem 扩展方法 @@ -203,7 +203,7 @@ public static T? GetEnvironment(this IContextAware contextAware) where T : cl public static IEnvironment GetEnvironment(this IContextAware contextAware) ``` -### 2. Object 扩展 ([`ObjectExtensions.cs`](ObjectExtensions.cs)) +### 2. Object 扩展 (`ObjectExtensions.cs`) 提供基于运行时类型判断的对象扩展方法,用于简化类型分支、链式调用和架构分派逻辑。 @@ -319,9 +319,9 @@ obj.SwitchType( ); ``` -### 3. OrEvent 扩展 ([`OrEventExtensions.cs`](OrEventExtensions.cs)) +### 3. OrEvent 扩展 (`OrEventExtensions.cs`) -为 [`IEvent`](../../GFramework.Core.Abstractions/events/IEvent.cs) 提供事件组合功能。 +为 `IEvent` 提供事件组合功能。 #### OrEventExtensions @@ -346,9 +346,9 @@ var onAnyDamage = onPhysicalDamage .Or(onPoisonDamage); ``` -### 4. UnRegisterList 扩展 ([`UnRegisterListExtension.cs`](UnRegisterListExtension.cs)) +### 4. UnRegisterList 扩展 (`UnRegisterListExtension.cs`) -为 [`IUnRegister`](../events/IUnRegister.cs) 和 [`IUnRegisterList`](../events/IUnRegisterList.cs) 提供批量管理功能。 +为 `IUnRegister` 和 `IUnRegisterList` 提供批量管理功能。 #### UnRegisterListExtension @@ -519,7 +519,7 @@ public class AchievementSystem : AbstractSystem ## 扩展方法的优势 1. **简洁的语法** - :不需要显式调用 [GetContext()](file:///d:/Project/Rider/GFramework/GFramework.Core.Abstractions/rule/IContextAware.cs#L13-L15) + :不需要显式调用 `GetContext()` 2. **类型安全**:编译时检查类型 3. **可读性高**:代码意图更清晰 4. **智能提示**:IDE 可以提供完整的自动补全 diff --git a/docs/zh-CN/core/ioc.md b/docs/zh-CN/core/ioc.md index 462aafd..974e28b 100644 --- a/docs/zh-CN/core/ioc.md +++ b/docs/zh-CN/core/ioc.md @@ -7,7 +7,7 @@ IoC(Inversion of Control,控制反转)包提供了一个轻量级的依赖 ## 核心类 -### [`IocContainer`](../../GFramework.Core/ioc/IocContainer.cs) +### `IocContainer` IoC 容器类,负责管理对象的注册和获取。 @@ -520,8 +520,8 @@ Console.WriteLine($"Contains IService2: {container.Contains()}"); // ### 3. 多实例支持 - 每个类型可以注册多个实例 -- 提供 [GetAll](file:///d:/Project/Rider/GFramework/GFramework.Core/ioc/IocContainer.cs#L244-L261) 方法获取所有实例 -- 提供 [Get](file:///d:/Project/Rider/GFramework/GFramework.Core/ioc/IocContainer.cs#L208-L225) 方法获取单个实例 +- 提供 `GetAll` 方法获取所有实例 +- 提供 `Get` 方法获取单个实例 ### 4. 类型安全 @@ -537,7 +537,7 @@ Console.WriteLine($"Contains IService2: {container.Contains()}"); // ### 6. 容器冻结 -- 提供 [Freeze](file:///d:/Project/Rider/GFramework/GFramework.Core/ioc/IocContainer.cs#L359-L372) 方法,防止进一步修改容器内容 +- 提供 `Freeze` 方法,防止进一步修改容器内容 - 防止在初始化后意外修改注册内容 ## 与其他 IoC 容器的区别 @@ -670,11 +670,11 @@ protected override void OnInit() 1. **线程安全操作**:容器内部使用读写锁确保线程安全,无需额外同步 -2. **容器冻结**:一旦调用 [Freeze](file:///d:/Project/Rider/GFramework/GFramework.Core/ioc/IocContainer.cs#L359-L372) +2. **容器冻结**:一旦调用 `Freeze` 方法,将不能再注册新实例 3. **单例注册限制 - **:[RegisterSingleton](file:///d:/Project/Rider/GFramework/GFramework.Core/ioc/IocContainer.cs#L84-L106) + **:`RegisterSingleton` 方法确保一个类型只能有一个实例,重复注册会抛出异常 4. **内存管理**:容器持有的实例不会自动释放,需要注意内存泄漏问题 diff --git a/docs/zh-CN/core/logging.md b/docs/zh-CN/core/logging.md index 982a70d..2699d72 100644 --- a/docs/zh-CN/core/logging.md +++ b/docs/zh-CN/core/logging.md @@ -6,7 +6,7 @@ Logging 包提供了灵活的日志系统,支持多级别日志记录。默认 ## 核心接口 -### [ILogger](../GFramework.Core.Abstractions/logging/ILogger.cs) +### ILogger 日志记录器接口,定义了日志记录的基本功能。 @@ -62,7 +62,7 @@ void Fatal(string msg, Exception t); string Name(); ``` -### [ILoggerFactory](../GFramework.Core.Abstractions/logging/ILoggerFactory.cs) +### ILoggerFactory 日志工厂接口,用于创建日志记录器实例。 @@ -72,7 +72,7 @@ string Name(); ILogger GetLogger(string name, LogLevel minLevel = LogLevel.Info); ``` -### [ILoggerFactoryProvider](../GFramework.Core.Abstractions/logging/ILoggerFactoryProvider.cs) +### ILoggerFactoryProvider 日志工厂提供程序接口,用于获取日志工厂。 @@ -83,7 +83,7 @@ ILoggerFactory GetLoggerFactory(); ILogger CreateLogger(string name); ``` -### [LogLevel](../GFramework.Core.Abstractions/logging/LogLevel.cs) +### LogLevel 日志级别枚举。 @@ -101,7 +101,7 @@ public enum LogLevel ## 核心类 -### [AbstractLogger](AbstractLogger.cs) +### AbstractLogger 抽象日志基类,封装了日志级别判断、格式化与异常处理逻辑。平台日志器只需实现 `Write` 方法即可。 @@ -127,7 +127,7 @@ public class CustomLogger : AbstractLogger } ``` -### [ConsoleLogger](ConsoleLogger.cs) +### ConsoleLogger 控制台日志记录器实现,支持彩色输出。 @@ -169,7 +169,7 @@ logger.Fatal("致命错误"); - `writer`:TextWriter 输出流,默认为 Console.Out - `useColors`:是否使用颜色,默认为 true(仅在输出到控制台时生效) -### [ConsoleLoggerFactory](ConsoleLoggerFactory.cs) +### ConsoleLoggerFactory 控制台日志工厂,用于创建控制台日志记录器实例。 @@ -181,7 +181,7 @@ var logger = factory.GetLogger("MyModule", LogLevel.Debug); logger.Info("日志记录器创建成功"); ``` -### [ConsoleLoggerFactoryProvider](ConsoleLoggerFactoryProvider.cs) +### ConsoleLoggerFactoryProvider 控制台日志工厂提供程序实现。 @@ -194,7 +194,7 @@ var logger = provider.CreateLogger("MyApp"); logger.Info("应用程序启动"); ``` -### [LoggerFactoryResolver](LoggerFactoryResolver.cs) +### LoggerFactoryResolver 日志工厂提供程序解析器,用于管理和提供日志工厂提供程序实例。