Cocos2d-x里面如何实现MVC(六)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/linyang24/article/details/77877788

     本文将会比较简短。如果你对于前面几篇介绍cocos2d-x里面如何实现mvc有什么不清楚的地方,请跟我讲,这样我就可以补充地更详细一点。在此,我简单地总结一下前面写的这些文章:

1 我们实现了Model,它可以帮助我们封装游戏的逻辑,这样可以使我们的关注点集中于游戏逻辑,而不是其它的(比如渲染)

2 我们实现了Controller来处理用户交互,同时相应地更新model。

3 我们实现了View,而它的职责仅仅是负责显示model的状态。

它们三者之间的交互关系如下:

4 Controller负责初始化Model和View

5 View负责显示Model 

6 View负责接收用户touch事件,然后传递给controller来处理。

7 Controller实现view的代理,同时可以操作Model。

8 model则执行一些游戏逻辑处理并通知view它的状态改变。

9 View根据model的当前状态来更新它里面的所有对象,比如精灵。

留几个开放性的问题:

10 如果你想使用NSUodoManager来实现“撤销”功能,你会把该功能放在哪里呢?Model?Controller?View?

11 你会怎么保存当前场景的状态信息呢?

12 或者你还可以补充其它问题?

猜你喜欢

转载自blog.csdn.net/linyang24/article/details/77877788