Architectures(主流架构)
- EmptyGO
- Simple GameManager
- Manager of Managers
- MVCS(StrageloC)
- MVVM(uFrame)
……….
EmptyGO
- 问题:消耗资源;不易于管理
Simple GameManager
- 问题:GameManager文件过于庞大,而且不是逻辑相关的脚本代码也很多容易造成混乱。
Manager of Managers
1. 中型以上的项目特别适用的方法。代码复用
2. EventManager:通常希望在一个集中地方管理所有的UI和到各个地方模块之间的消息,以及各个模块之间的消息。
3. AudioManager:在项目中访问音频文件。
4. GUIManager:所有UI发生的Click事件管理。
5. PoolManager:很重要。C#中创建和销毁一个对象很消耗。
6. LevelManager:管理关卡。
7. GameManager:不可以复用的游戏逻辑管理。
8. SaveManager:保存数据管理。
9. MenuManager:管理动画和场景中显示。
Level Manager
1. 为什么使用?加载场景过多,场景复用传递参数;修改场景顺序;
2. 设计:
Pool Manager
Save Manager
MVCS(Strageloc)
- 中心思想Binding:
- IBinder.Bind
<
Key>
().To<
Value>
(); - IBinder.Bind
<Key>
().To<
Value>
().ToName(name):当绑定的Key值一样时可以命名区分。
MVVM(uFrame)
- 与StrageIoc相似,是图形化操作,但是付费。
架构总结
- Model与View必须分离开,有中间层。
管理规则
1.好的架构=好的规则
Unity测试框架