docs: 更新文档内容,简化语言并修正格式
- 简化插件开发指南中的描述,移除冗余内容 - 调整部署文档中的Python版本说明 - 优化最佳实践文档的措辞和格式 - 更新性能优化文档,删除不准确的数据 - 重构核心概念文档,使用更简洁的语言 - 修正README中的项目描述和技术栈说明 - 更新快速上手文档,简化安装步骤 - 调整事件流转文档的描述方式 - 简化架构文档内容 - 更新指令处理文档,添加参数注入示例 - 优化单例管理器文档的表述
This commit is contained in:
@@ -2,9 +2,9 @@
|
||||
|
||||
写插件很简单,但写出**高性能、不炸裂**的插件需要遵守规矩。
|
||||
|
||||
## 1. 绝对不要阻塞事件循环 (Don't Block the Loop!)
|
||||
## 1. 绝对不要阻塞事件循环。。。
|
||||
|
||||
这是死罪。NEO Bot 是单线程异步架构,如果你在主线程里 `time.sleep(5)`,整个机器人就会卡死 5 秒,谁都别想说话。
|
||||
这是底线。NEO Bot 是单线程异步架构,如果你在主线程里 `time.sleep(5)`,整个机器人就会卡死 5 秒
|
||||
|
||||
* **错误**: `time.sleep(1)`, `requests.get(...)`, 大量 CPU 计算。
|
||||
* **正确**: `await asyncio.sleep(1)`, `await session.get(...)`。
|
||||
@@ -40,23 +40,23 @@ weather = await redis_manager.get("weather:beijing")
|
||||
|
||||
## 4. 类型提示 (Type Hinting)
|
||||
|
||||
我们开启了 Mypyc 编译,这意味着你的代码最好有规范的类型提示。
|
||||
这不仅是为了编译,也是为了让你自己少写 Bug。
|
||||
我开启了 Mypyc 编译,这意味着你的代码最好有规范的类型提示。
|
||||
这不仅是为了编译,也是为了让你自己少写 Bug
|
||||
|
||||
```python
|
||||
# 好的写法
|
||||
async def handle(event: MessageEvent, args: list[str]) -> None:
|
||||
...
|
||||
|
||||
# 烂写法
|
||||
# 不好写法
|
||||
async def handle(event, args):
|
||||
...
|
||||
```
|
||||
|
||||
## 5. 异常处理
|
||||
|
||||
别让你的插件因为一个报错就搞崩整个机器人。
|
||||
虽然框架层有捕获机制,但你自己处理好异常是基本素养。
|
||||
别让你的插件因为一个报错就崩溃机器人
|
||||
虽然框架层有捕获机制,但你自己处理好异常是最好的。。。
|
||||
|
||||
```python
|
||||
try:
|
||||
|
||||
Reference in New Issue
Block a user