IOS设计模式第一篇之MVC

转载 2014年12月13日 15:52:19

设计模式的好处:我们可以写出容易理解,重用度很高的代码。降低代码的耦合度,符合软件工程的思想。

设计模式主要分为三类:创造型的:单例和抽象工厂。结构类型的:

MVC  Decorator, Adapter, Facade and Composite.等这几种模式

行为性的:Observer, Memento, Chain of Responsibility and Command.

讲讲第一个设计模式MVC,我们的iOS应用基本都是基于MVC的。

model:持有我们应用的数据,和定义怎么操控他。在你的应用里面就是Album 这个类

View:处理用户的操作和展示model,都是UIView的子类。在应用里面是AlbumView类

Controller:他的作用主要是用来协调View和model把数据展示到View上,就是应用的Viewcontroller类

Image

model通知Controller如果有数据改变,在Controller更新数据在View上。View可以通知Controller用户执行的操作。然后Controller来更新数据。如果有任何数据更新请求。

你可能担心为什么不抛弃Controller呢,并且实现View和model在同样的类看起来更容易。

所有的这一切归功与代码的分离性和可重用性。理想情况下,我们应该让View和model分离,如果View不依赖与模型的具体实现。这样就可以用不同的model来表达不同的数据。

例如,在将来你也许添加movies或者books向你的库里。你仍然可以用同样的View来展示你的movies或者books对象。此外,你如果想创建一个新的项目来处理albums,你可以简单的重用你的专辑类,因为他不依赖任何View。这就是MVC的力量。

怎么使用MVC设计模式呢?

首先你需要确保你的项目中的每个类是一个控制器一个model一个View,不要把两个角色在一个类里面。你已经做好了很好的工作到目前位置你创建了一个Album 和一个AlbumView 类。

第二你为了确保这个方法可行还需要创建三个项目组来放置你的代码为每个类别。

创建三个文件夹一个是model 一个是view 还有一个Controller

现在把之前创建的类放到相应的位置。最后变成这样:

Image(1)

相关文章推荐

iOS开发之有趣的UI —— 数据转模型及MVC设计模式

在上一篇iOS开发之有趣的UI —— 基础控件与经典案例中已经对基本控件进行了详细的介绍并且简单的做了一个购物车的项目,但是这个项目还有待完善,里面还有很多非常实用技术点和设计思想,所以本次分享将从以...

理解iOS中的MVC设计模式

http://www.cocoachina.com/bbs/read.php?tid-48069-keyword-MVC.html Model: 代表你的应用程序是什么(不是怎么展现) ...

IOS中的MVC设计模式理解

我们今天谈谈cocoa程序设计中的 模型-视图-控制器(MVC)范型。我们将从两大方面来讨论MVC:   什么是MVC?M、V、C之间的交流方式是什么样子的?   理解了MVC...

iOS中MVC设计模式

在组织大型项目的代码文件时,我们常用MVC的思想。MVC的概念讲起来非常简单,就和对象(object)一样。但是理解和应用起来却非常困难。今天我们就简单总结一下MVC设计理念。  MVC...

iOS MVC设计模式

文中包含了MVC的一些缺点。

iOS 技术浅谈之第三篇(MVC设计模式)

前言:我记得在公司做的第一个项目,写代码是想到哪写到哪,代码没有一点结构层次感。到后来我发现,项目出现BUG了维护起来真的好痛苦。还好项目不是很大,要是很大的项目,我都不知道怎么办了。后来做项目我就在...
  • by3g123
  • by3g123
  • 2015年03月25日 11:13
  • 649

ios开发中的基本设计模式(代理,观察者,MVC,单例,策略,工厂,MVVM,原型,Target-Action,通知(notification)机制)

(一)代理模式
 应用场景:当一个类的某些功能需要由别的类来实现,但是又不确定具体会是哪个类实现。
 优势:解耦合
敏捷原则:开放-封闭原则
实例:tableview的 数据源delegate,通...

iOS小明开发笔记(二十九) (设计模式MVC、单例、代理、KVO)

其实iOS中的设计模式有非常多,常用的就下面这四种 一.MVC设计模式(设计模式之王) MVC根据角色划分类,涉及到三个角色: Model:模型保存应用程序的数据。 View:视图...

理解iOS中的MVC设计模式

转自:http://liuzhichao.com/p/1379.html 模型-视图-控制器(Model-View-Controller,MVC)是Xerox PARC在20世纪80年代为编...

IOS平台上的MVC设计模式

一、概念  Model :是对应用的抽象。拿建一艘航母来说,那张图纸就是Model,对航线母的长、宽、高、可以承载多少架战斗机、鱼雷、有多少跑台等等。 Controller :应用如何将Model...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:IOS设计模式第一篇之MVC
举报原因:
原因补充:

(最多只允许输入30个字)