This repository has been archived by the owner on Mar 4, 2024. It is now read-only.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Flandre 在经过一系列的迭代,已经发展到了 v0.6.0 版本。但项目的架构方面目前有一些问题:
Flandre.Core
名不符实,虽名为 Core,但并没有体现出“核心”该有的小体量,而是大包大揽,囊括了指令、插件等种种功能。这导致可扩展性堪忧,同时也难以作为小模块嵌入已有项目中。目前打算拆分现在的
Flandre.Core
包,转换为两个分离的组件:Flandre.Core
和Flandre.Framework
。Flandre.Core
将仅包含:适配器 (Adapter) 部分、机器人 (Bot) 部分、消息相关 (MessageSegment...)、模型相关 (User, Guild...) 等通用组件,用户需要手动通过事件方式与 Bot 进行交互。Flandre.Framework
将包含:与 Core 模块交互;完整的指令、插件系统;多机器人实例管理;依赖注入;基于Microsoft.Extensions.Logging
统一化日志管理等。