浅谈iOS中的MVC设计【图文+视频】
注:本系列学习帖子我在DevDiv.com移动开发社区原创首发
转载请注明出处:BeyondVincent(破船)@DevDiv.com
如果你有什么问题也可以前往交流
下面是首发地址:
目录:
1.MVC介绍
2.iOS中的MVC
3.iOS开发中的MVC的使用步骤
4.Demo示例
浅谈iOS中的MVC设计
1.MVC介绍
模型-视图-控制器(Model-View-Controller,MVC)是Xerox PARC在20世纪80年代为编程语言Smalltalk-80发明的一种软件设计模式,至今已广泛应用于用户交互应用程序中。每个MVC应用程序都包含Model、View和Controller三部分。
从下图中,我们可以看出控制器在MVC中起到非常重要的作用,它负责视图与模型相互间的交互。当视图上有了某些操作,会通过控制器反应至模型中。如果模型中的数据有所改变或者更新,则会通过控制器,对视图进行相关界面改变。视图与模型是永远都不直接进行通信的。
2.iOS中的MVC
在iPhone程序开发中,所有的控件、窗口等都继承自UIView,对应MVC中的V。UIView及其子类主要负责UI的实现,而UIView所产生的事件都可以采用委托的方式,交给UIViewController实现。对于不同的UIView,有相应的UIViewController,对应MVC中的C。例如在iOS上常用的UITableView,它所对应的Controller就是UITableViewController。至于MVC中的M,就需要用户根据自己的需求来实现了。
iOS的sdk中已经为我们提供了许多视图组件:例如:UIView,UIViewController。这也方便开发者进行开发。同时,也对数据模型中可能使用到的一些组件进行了封装:数据库、CoreDta等,这有利于开发者迅速的建立一个基于MVC设计模式的程序。
3.iOS开发中的MVC的使用步骤
在开发程序时,我们一般按照如下几个步骤来进行:
- 定义UIViewController
- 定义UIView
- 定义Model
- MVC相互间的通信
4.Demo示例
Demo下载地址:
http://www.devdiv.com/thread-130016-1-1.html