GFramework/GFramework.Core.Abstractions
GeWuYou 91246ff482 feat(state): 扩展状态管理功能支持历史记录撤销重做和批处理
- 新增 RunInBatch() 方法支持批处理通知折叠
- 添加 Undo()/Redo() 基于历史缓冲区的状态回退前进功能
- 实现 TimeTravelTo() 跳转到指定历史索引的能力
- 提供 ClearHistory() 以当前状态重置历史锚点的功能
- 支持可选历史缓冲区、撤销/重做和时间旅行功能
- 添加可选批处理通知折叠机制
- 实现多态 action 匹配(基类/接口)支持
- 在诊断信息中增加历史游标和批处理状态
- StoreBuilder 新增 WithHistoryCapacity() 和 WithActionMatching() 配置方法
- 优化 reducer 注册支持全局序号以实现稳定排序
- 实现多态匹配时的类型继承距离计算
- 添加批处理嵌套支持和状态通知延迟机制
2026-03-24 19:08:03 +08:00
..

GFramework.Core.Abstractions

GFramework 框架的抽象层定义模块,包含所有核心组件的接口定义。

主要内容

  • 架构核心接口 (IArchitecture, IArchitectureContext等)
  • 数据模型接口 (IModel)
  • 业务系统接口 (ISystem)
  • 控制器接口 (IController)
  • 命令与查询接口 (ICommand, IQuery)
  • 事件系统接口 (IEvent, IEventBus)
  • 依赖注入容器接口 (IIocContainer)
  • 可绑定属性接口 (IBindableProperty)
  • 状态管理接口 (IStore, IReducer, IStateSelector, IStoreBuilder)
  • 日志系统接口 (ILogger)

设计原则

  • 接口隔离,每个接口职责单一
  • 依赖倒置,上层依赖抽象接口
  • 类型安全,充分利用泛型系统
  • 广泛兼容,基于 netstandard2.0

详细文档

参见 docs/zh-CN/abstractions/ 目录下的详细文档。