客户端程序开发-MVC框架
来源:互联网 发布:游戏编程教学视频 编辑:程序博客网 时间:2024/06/03 19:39
一、什么是MVC设计框架
对于程序开发,尤其是客户端程序开发而言,MVC框架非常实用,C推荐通过观察者设计模式来实现。
MVC的m即model(模型),v即view(视图),c即controller(控制器)。
v是m在屏幕上的表现,c定义v对用户输入的响应方式。一旦m的数据发生变化,m将通知有关的v使之刷新。同一个m可创建不同的v而无需重写m(轻松切换ui)。
一般情况下,view观察model,model是被观察者,通知view改变。但有时候例如网络异常时,model是不改变的,这时候可由controller来负责通知view,这属于被动通知。
二、为什么需要MVC
1. 优良的阅读性和维护性,工程目录结构良好。尤其是半路加入项目组的新同学,会深深体会到 应用mvc与不运用mvc 写出的代码的区别。
2. 解除耦合性。例如 ui和处理数据的逻辑分开,例如可以随心所欲的删除ui文件而不会引起编译失败。
3. 数据层,逻辑层,表现层的分离,提高可复用性和灵活性。效率是关键。
三、怎样实现MVC
整个框架分3个部分:UI部分(对应View),Data部分(对应Model),Manager部分(对应controller)。还有ProtocolEngine,其主要是一个协议调用接口,UI的所有请求都是通过它来实现。按照功能划分,这一部分应该也属于controller的一个子集。 其主要流程为:UI发出一个请求,调用engine里的接口。收到回报后解码将请求结构push到manager那里,如果需要保存数据,manager此时就向data里写入数据,然后通知UI该请求的结果。UI再去判断,如果请求失败(例如网络错误),则做出相应的UI提示,正确则UI通过data里的数据刷新自己。Manager只通知结果,是不负责把回包数据直接返回给UI的。如果返回数据给UI了,那么UI还需要负责向Model写入数据等等一系列逻辑这样当UI需要重新写的时候,就乱了。
四、代码的努力方向
1.做了iphone版本,产品哪天就说更换套UI或者出一个ipad版本的,好的框架是重新写套UI就可以了,model及controller模块一行代码都不用修改,更不用在底层做很多的宏定义来区分版本类型(个人觉得这样不是很好维护),。Android的也有手机和pad版本的,这些都涉及到复用。
2.利于项目团队其他成员的合作。提供了一套接口,要简单。通过一个接口的使用,就要明白整个框架的接口使用规则。
- 客户端程序开发-MVC框架
- 客户端程序开发中的mvc设计模式
- JavaScript 客户端 MVC 框架
- 基于 Cesium 的Web三维地球客户端程序开发框架
- MVC框架 开发思想
- 小型mvc框架开发
- java开发 mvc框架
- .net mvc开发框架
- 使用一般处理程序,模拟ASP.NET MVC,开发一个轻量级的学习版MVC框架。
- solr客户端程序开发
- 利用飞信虚拟框架开发绿色.NET程序,让winform程序在客户端直接运行
- Web开发之MVC框架
- 开发自己PHP MVC框架
- Web开发之MVC框架
- 开发框架 MVC MVP MVVM
- 富客户端开发框架:ExtJS
- IOS开发教程-01-IOS程序框架认识、XCode基础了解、MVC面向对象设计
- MVC模式理解(JavaFX开发客户端)
- ACE Proactor
- 安装完QQ必须要删除掉的几个恐怖的占用内存又无用的文件
- Android入门第八篇之GridView(九宫图)
- function _getIp
- PHP内核中的神器之HashTable
- 客户端程序开发-MVC框架
- samba添加用户和密码
- Count and Say
- 进程与线程的一个简单解释
- ACE reactor --- Echo Server
- meld代替svn默认的diff工具(已经验证过,功能OK)
- st sdk
- 一天一linux命令(19) jobs fg bg 作业管理
- 注册表操作类