今天发现了斯坦福的一套视频感觉很首启发,那套视频里讲了iOS7开发的一些思想,MVC从开始到最后,感觉MVC就是为iOS开发而生(好像html也有,没做过不知道),感觉MVC还是很重要的。
1.何为MVC
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
借来斯坦福的ppt讲解MVC的实现
首先Controller和Model,Controller和View之间进行通信,Model与View之间不能通信
Controller和View之间会出现两种通信方式:数据源方法以及代理方法,代理方法在下一个blog中会写。按钮等继承了UIControl的那些类则通过action或者outlet(输出口)进行通信。
数据源方法(data source)
V不管保存数据,但是数据更新需要C进行显示。
代理方法(delegate)
action或者outlet
按钮等继承了UIControl的那些类则通过action或者outlet(输出口)进行通信
Controller和Model之间通过Notification(通知)or KVO进行数据的更新
原文:http://9143994.blog.51cto.com/9133994/1556790