关于MVC的一些小心得

来源:互联网 发布:自由行 知乎 编辑:程序博客网 时间:2024/05/22 16:07

MVC一般搞程序的都知道,不知道就问百度。

这里还是分享MVC的小模板,不过这个是手打的:

Model:Name(唯一标识,字段),SendEvent(虚方法,给Controller发送事件)

View:Name(唯一标识,字段),GetModel(获取数据模型的方法,抽象),SendEvent(虚方法,给Controller发送事件)

Controller:ModelList(模型列表,存放注册的模型,字典(存放Name和Model类)),viewList(视图列表,存放注册的视图字典(存放Name和View类),RegisterModel(注册模型的方法),RegisterView(注册视图的方法),      GetModel(获取模型的方法),GetView(获取视图的方法),HandleEvent(处理事件的方法)。

这三个类都是抽象父类,需要被继承,不做声明的方法都是虚方法。

以上是MVC的大概内容,不完整,但是算齐全。

解释一下:

Model和View都是有唯一标识Name的类,他们之间可以由View获取Model的信息,但是不能控制和更改,所以需要Controller控制他们,Controller控制他们之前,需要把他们的信息存储到Dictionary中,方便管理多个信息,需要用某一个Model或View 的时候,只需要调用Get方法输入Name就能获取对应的数据了。


实际用的时候,数据模型继承于Model,玩家视图继承于View ,控制方面的脚本例如GameManager继承于Controller。

举个栗子:一个手机卡牌游戏,类似我是MT,关于卡牌信息,存入一个卡牌信息类中,使之继承于Model。关于卡牌信息显示,用UI显示,继承于View,最后有个GameManager,继承于Controller。于是,流程是GameManager去注册Model和View,然后先调用Model,去赋值,再调用View中的GetModel,给View赋值。此时View是不能更改Model中的值,只有GameManager才能改,这个就是他的思想。


现在修炼不够,以后再做修改和补充。

0 0
原创粉丝点击