mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-03-23 19:24:29 +08:00
docs(core): 更新文档中的链接格式和代码引用样式
- 将文档中的文件路径链接替换为纯文本格式 - 统一代码引用的显示样式,移除多余的链接标记 - 修正事件和接口文档中的格式一致性问题 - 更新扩展方法文档中的链接引用方式 - 标准化日志系统文档中的接口引用格式
This commit is contained in:
parent
8f847de24e
commit
f387e3788e
@ -151,7 +151,7 @@ public class CombatSystem : AbstractSystem
|
||||
|
||||
### 功能说明
|
||||
|
||||
[CommandBus](file:///d:/Project/Rider/GFramework/GFramework.Core/command/CommandBus.cs#L8-L34) 是命令执行的核心组件,负责发送和执行命令。
|
||||
`CommandBus` 是命令执行的核心组件,负责发送和执行命令。
|
||||
|
||||
**主要方法:**
|
||||
|
||||
|
||||
@ -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<IUnRegister> UnregisterList { get; } // 获取注销列表
|
||||
```
|
||||
|
||||
### 4. [IEventBus](../GFramework.Core.Abstractions/events/IEventBus.cs)
|
||||
### 4. IEventBus
|
||||
|
||||
事件总线接口,提供基于类型的事件发送和注册。
|
||||
|
||||
@ -50,7 +50,7 @@ void Send<T>() where T : new(); // 发送事件(自动创建实例
|
||||
|
||||
## 核心类
|
||||
|
||||
### 1. [EasyEvent](EasyEvent.cs)
|
||||
### 1. EasyEvent
|
||||
|
||||
无参事件类,支持注册、注销和触发无参事件。
|
||||
|
||||
@ -73,7 +73,7 @@ onClicked.Trigger();
|
||||
unregister.UnRegister();
|
||||
```
|
||||
|
||||
### 2. [Event`<T>`](EasyEvent.cs)
|
||||
### 2. Event`<T>`
|
||||
|
||||
单参数泛型事件类,支持一个参数的事件。
|
||||
|
||||
@ -93,7 +93,7 @@ onScoreChanged.Register(newScore =>
|
||||
onScoreChanged.Trigger(100);
|
||||
```
|
||||
|
||||
### 3. [Event<T, TK>](EasyEvent.cs)
|
||||
### 3. Event<T, TK>
|
||||
|
||||
双参数泛型事件类。
|
||||
|
||||
@ -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<PlayerDiedEvent>();
|
||||
```
|
||||
|
||||
### 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`
|
||||
|
||||
定义了架构生命周期相关的事件。
|
||||
|
||||
|
||||
@ -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<T>(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 可以提供完整的自动补全
|
||||
|
||||
@ -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<IService2>()}"); //
|
||||
### 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<IService2>()}"); //
|
||||
|
||||
### 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. **内存管理**:容器持有的实例不会自动释放,需要注意内存泄漏问题
|
||||
|
||||
@ -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
|
||||
|
||||
日志工厂提供程序解析器,用于管理和提供日志工厂提供程序实例。
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user