补充一下我做的俄罗斯方块的MVC分析

重新复习MVC框架

虽然之前用MVC做了一个俄罗斯方块,但是对于整体的架构,我还不是很清楚,今天决定重温一遍MVC框架逻辑

一.什么是MVC架构

MVC嘛,顾名思义,model,view,Controller视图模型控制器三层分离的一种软件架构代码,这玩意有啥用呢?很直观的好处,就是能将业务逻辑分离,我是这么理解的,假设我们的模型,一个商城按钮放在页面上,我们点击它,就触发了点击事件,然后就发送了消息给Controller层,然后ctrl层转发消息给view层,view层收到消息更改页面数据,实现这么个逻辑

--[[

乍一看,是不是感觉根本不需要这么个东西,我直接就在按钮上绑定点击事件不就成了,是的,如果项目够小,这么写没有问题,但是一旦项目变大,业务逻辑变得复杂,你的UI界面不止有商城,还有背包,装备,坐骑,等等,如果你还是写一个绑一个,那么它就会变成一团乱麻,不但阅读很困难,而且一旦调整,更是牵一发动全身,更致命的是,你一旦想要进行扩展的时候,也会很麻烦,比如你想要点击一个按钮,按钮渐渐隐藏,然后再弹出面板,那么有没有比较好的办法来解决这个问题呢?没错,就是把它集成到model层里面,这样,我们每个按钮其实都是继承自model层的,而model层也是唯一和游戏交互的那个层,我们继承了model层里面的点击渐隐事件,这样,如果我们不想要这个事件的话,直接解绑这个事件就行了,实现了处理和模型本身的分离

--]]

二.用一张图来诠释

这个也是我在网上找到别的大佬画的图,你看,我都没去水印,程序员天天看代码很痛苦,我觉得用一张图会比看上面我的文字更舒服,嗯,我把上面的注释了,view层才应该是和玩家交互的UI层,大家千万别看(大雾)

1.      我是一个玩家

View层对于我来说是什么,是我所能见到到UI界面,我点击按钮,就是算发起一个请求了

这个很直观,请求会发送到Controller层,然后Controller层会发给Model层,然后Model层会返回数据给View层,这就是mvc在UI层的一个数据逻辑了


2.      就是该去看实例了,为啥,我觉得MVC模式单从架构上来讲还是非常好理解的,简单地将业务逻辑分离成输入,处理,输出三层,那么,我推荐我之前的做的一个博客,mvc开发u3d的俄罗斯方块(其实也是学习别人的),嗯那个博客其实好多图都没贴上去,我觉得加上这么一个配套的图文可以说是非常合适了

http://blog.csdn.net/qq_36574586/article/details/79053581


猜你喜欢

转载自blog.csdn.net/qq_36574586/article/details/79590110