游戏客户端的功能模块
在我目前接触的游戏系统中,获得了一点经验~
个人认为按照以下几点来做的系统相对更容易维护,更容易理解。
1.一个完整的程序由功能模块组成。每个功能模块都尽量保持黑盒模式,即相对独立。这对于分步加载也是非常有利的,毕竟一次性完成所有加载所需的流量和时间都是相当大的。
2.每个功能模块都有其对应的代理,代理主要负责调用模块功能,比如显示对应的内容,清理模块等。功能模块相对封闭,基本上只能通过agent才能操作相应的功能模块(也可以通过事件触发功能模块)。
3.如果某个功能模块中需要更改数据层的内容,需要向服务器发送请求,成功后才能更改数据层的内容,数据层的内容更改后才能继续功能模块的下一步动作(此时可以通过事件触发)。
4.功能模块可以直接接收服务器发来的非数据请求(即可以由事件触发,不经过数据层)。
5.目前在项目中,向服务器发送请求或者从服务器返回数据都是通过协议来完成的。
以下是我的简单总结。如有疑问,望指正!
Emmmm,* * *绵~