博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《从零开始学Swift》学习笔记(Day67)——Cocoa Touch设计模式及应用之MVC模式
阅读量:6593 次
发布时间:2019-06-24

本文共 862 字,大约阅读时间需要 2 分钟。

原创文章,欢迎转载。转载请注明:关东升的博客
 
 

MVCModel-View-Controller,模型-视图-控制器)模式是相当古老的设计模式之一,它最早出现在Smalltalk语言中。现在,很多计算机语言和架构都采用了MVC模式。

 

MVC模式概述

MVC模式是一种复合设计模式,由 “观察者”(Observer)模式、“策略”(Strategy)模式和“合成”(Composite)模式等组成。MVC模式由3个部分组成,如图所示,这3个部分的作用如下所示。

  • 模型。保存应用数据的状态,回应视图对状态的查询,处理应用业务逻辑,完成应用的功能,将状态的变化通知视图。

  • 视图。为用户展示信息并提供接口。用户通过视图向控制器发出动作请求,然后再向模型发出查询状态的申请,而模型状态的变化会通知给视图。

  • 控制器。接收用户请求,根据请求更新模型。另外,控制器还会更新所选择的视图作为对用户请求的回应。控制器是视图和模型的媒介,可以降低视图与模型的耦合度,使视图和模型的权责更加清晰,从而提高开发效率。

      

对应于哲学中的“内容”与“形式”, MVC模型中,模式是“内容”,它存储了视图所需要的数据,视图是“形式”,是外部表现方式,而控制器是它们的媒介。

 

CocoaTouch中的MVC模式

上面我们讨论的是通用的MVC模式,而CocoaCocoa Touch框架中的MVC模式与传统的MVC模式略有不同,前者的模型与视图不能进行任何通信,所有的通信都是通过控制器完成的,如图所示。

 

Cocoa Touch框架的UIKit框架中,UIViewController是所有控制器的根类,如UITableViewControllerUITabBarControllerUINavigationControllerUIView是视图和控件的根类。

 

 

欢迎关注关东升新浪微博@tony_关东升。

关注智捷课堂微信公共平台,了解最新技术文章、图书、教程信息
 
更多精品iOSCocos、移动设计课程请关注智捷课堂官方网站:
智捷课堂论坛网站:

 

 

你可能感兴趣的文章
sqlserver之SQL语句优化
查看>>
信息安全基础加密
查看>>
什么是以太坊DAO?(一)
查看>>
UITextField设置placeholder颜色
查看>>
mac下tomcat的安装与配置
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
Polycom CX话机无法正常连接Outlook日历
查看>>
微信跳一跳如何使用外挂
查看>>
android手机立即变无线移动终端播放器 Qloud media 详细教程
查看>>
阅读笔记-《图解密码技术》(日)结城浩
查看>>
win10 使用邮箱帐号登录
查看>>
jQuery库与其它冲突问题
查看>>
kubernates之部署springboot
查看>>
android开发实战之做手机号和邮编查询小程序
查看>>
Linux基本命令——备份与恢复文档
查看>>
Powershell管理系列(二)Exchange 2013使用PowerShell远程管理功能
查看>>
615A - 比特率、波特率、 数据传输率、可编程中断控制器
查看>>
mybatis 自身关联 映射
查看>>
nginx反向代理+keepalived
查看>>