无聊中看了些开源代码,发现其中有个相同点就是:
- 简单就是美
- 数组 链表 解决了绝大部分事情
- 数据结构体注意cache对齐
- 整个业务就是状态图
- 一组对象/事件就是一组状态机
- 状态的迁移转换都是由于消息通告而触发的
- 每一个消息是可以debug可以记录的
- 完善的日志记录分层可debug
- 严谨的错误处理
- 考虑多平台移植,最大可移植性
- 注意数据拷贝、上下文切换、内存分配、锁竞争等事项
- 注意可配置性,适应个性与共性的需求以及其变化,配置保存方式xml ini conf等选择
- 进程间通信协议选择
无聊中看了些开源代码,发现其中有个相同点就是: