移动开发中MVC模式和分层
MVC在界面开发中被奉为设计的典范,在移动开发中也是
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写。
它将业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。
我刚接触ios,想通过ios的一些实例设计来理解MVC在ios中的应用。
1. IOS的view
对于工具化的图形界面设计,这个就应该是各种视图控件的设计,页面和控件的大小、位置、边框、颜色(前景、背景)、字体、title等属性的设置。
对于定制化的图形界面,仍然需要代码来设计页面和控件的大小、位置、边框、颜色(前景、背景)、字体、titile等属性。
UIView是ios视图设计中,最基本的一个类。里面很多属性需要定义。
与view紧密关联的数据就是viewcontroller了,view的刷新和输入提交都是通过controller来完成。
controller对view拥有控制权,简单来说,一个controller拥有访问其view实体的权利。
controller会拥有哪些权利? 这就是controller与view不同的地方,代码相分离的地方。
2. iOS的controller
controller面对view的功能有:
能显示的修改view中的关联变量,驱动view的刷新。
能保存view中的关联变量,驱动model数据在服务端或cache的更新。
为实现一个完整的feature:
controller一般还拥有一些功能,如:
1. 逻辑处理、数据处理、错误处理等等
2. 与其他controller的交互
3. 访问server
4. 访问数据库
由以上功能来看,controller还能再分几层, 如逻辑层,cache层,server api call层(如rest)。
3. ios的Model
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。