好久没写博文了,最近刚找到一份工作,也是挺忙的,在做项目期间对MVC框架理解更深了点,趁着有闲时间把自己的感想写一下。
在我看来框架和设计模式都是一种逻辑处理,根据自己的项目进行逻辑处理。MVC(Model View Controler),M是数据模型,V是用户界面,C是控制器。使用MVC的目的是要讲M和V实现代码分离,从而使同一个程序可以使用不同的表现形式。C的目的则是确保M和V同步,一旦M改变,V应该同步更新。
视图
视图是用户看到的UI界面,MVC一个大的好处就是能为你处理不同的视图,还可以提高数据的复用率。在视图中没有逻辑处理,只是负责呈现,只是作为一种输出数据并允许用户操纵的方式。如下图,只是一个引用界面的一些组件和提供用户操作的方法的脚本。
模型
用到的一些数据和从服务器返回来的数据都在这里保存。一个数据模型能为多个视图提供数据,所以减少了代码的重复性。
控制器
控制器接受用户输入并调用数据模型和视图去完成用户的需求,控制器本身不输出任何东西。它只是接收请求并决定调用哪个模型构件去处理请求,然后用确定用哪个视图来显示模型处理返回的数据。向服务器发送请求包之后,根据接口返回来需要的数据包,解析出来存在自己的数据类型里,其中在控制器里会有个监听方法,监听数据更新,因为在返回包得到数据之后广播了一下,这样监听的方法就会执行,就是给引用视图的变量赋值,显示出来。
MVC的缺点
MVC的缺点是由于它没有明确的定义,所以完全理解MVC并不是很容易。使用MVC需要精心的计划,由于它的内部原理比较复杂,所以需要花费一些时间去思考。