![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
iOS开发-设计模式系列
浩羽科技
生命不息,运动不止。
展开
-
iOS 设计模式系列:Singleton – 单例模式
单例设计模式确切的说就是一个类只有一个实例,有一个全局的接口来访问这个实例。当第一次载入的时候,它通常使用延时加载的方法创建单一实例。 提示:苹果大量的使用了这种方法。例子:[NSUserDefaults standerUserDefaults], [UIApplication sharedApplication], [UIScreen mainScreen], [NSFileManager d翻译 2015-07-28 14:51:30 · 321 阅读 · 0 评论 -
iOS 设计模式系列:Decorator – 装饰器模式
装饰器模式可以在不修改代码的情况下灵活的为一对象添加行为和职责。当你要修改一个被其它类包含的类的行为时,它可以代替子类化方法。 在 Object-C 里有两个种非常常见的实现模式:分类(Category)和委托(Delegation)。 分类 Category 分类是一种非常强大的机制,它允许你在一个已存在的类里添加新方法,而不需要去为他添加一个子类。新方法在编译的时候添加,它能翻译 2015-07-29 10:05:15 · 528 阅读 · 0 评论 -
iOS 设计模式系列:Command – 命令模式
命令模式封装一个请求或行为作为一个对象。封装的请求比原的更加灵活,可以在对象之间传递,储存,动态修改,或放入一个队列。苹果的Target-Action调用机制已经实现了命令模式。 你可以查看跟多关于Target-Action的苹果官方文档, NSInvocation包含一个target对象,一个方法和一些参数。这个对象可以按需要动态修改。这是一个非常好的命令模式的列子。减少发送对象和接受对象翻译 2015-07-29 10:06:18 · 839 阅读 · 0 评论 -
iOS 设计模式系列:Archiving – 归档模式
备忘录模式就是苹果中一种归档形式。它能够把对象转化成一种数据流,在不依赖于外部类的私有属性的情况下来存储和取出数据。你可以在 iOS 6 by Tutorials 这本书的第 16 章读到更多的相关信息。或者这里 Apple’s Archives and Serializations Programming Guide。 如何使用归档 Archiving 首先,你需要声明 Albu翻译 2015-07-29 10:06:09 · 364 阅读 · 0 评论 -
iOS 设计模式系列:Observer – 观察者模式
在观察者模式中,当状态发生改变的时候,一个对象会通知另一个对象。这个对象不需要知道另一个对象发生了什么改变─因此非常鼓励这种分离式的设计。这种模式经常用于,当一个属性发生改变时通知跟它相关的对象。 它通常需要一个观察者(observer)注册跟踪另外一个对象的状态。当状态发生改变的时候,所有的观察对象都会被通知改变。苹果的推送通知服务就是一个这样的例子。 如果你想要一直使用 MVC 模翻译 2015-07-29 10:04:35 · 871 阅读 · 0 评论 -
iOS 设计模式系列:Adapter – 适配器模式
注:本节有点长,并且有些难度,希望大家有毅力看下去。 一个适配器允许接口不兼容的类在一起工作。它把它自己包裹成一个对象,公开一个与这个对象相互作用的标准接口。 如果你熟习适配器模式,你会注意到苹果实施它的时候有一点不同的习惯─苹果使用协议 (protocols)。你可能熟习像 UITableViewDelegate, UIScrollViewDelegate, NSCoding 和翻译 2015-07-29 10:04:15 · 435 阅读 · 0 评论 -
iOS 设计模式系列:Facade – 外观模式
目前你有 PersistencyManager 来在本地存储专辑数据,HTTPClient 处理远程通信。项目中其它的类跟这些逻辑都没关。 执行这个模式,只有 LibraryAPI 来保存 PersistencyManager 和 HTTPClient 的实例。之后,LibraryAPI 将会公开一个简单的 API 来访问这些服务。 提示:通常,单例存在 app 的整个生命周期。不需一直使翻译 2015-07-28 14:54:22 · 448 阅读 · 0 评论 -
iOS 设计模式系列:MVC – 设计模式中的国王
模型(Model) 视图(View) 控制器(Controller) (MVC) 是 Cocoa 中的一种行为模块,并且也是所有 Cocoa 设计模式中使用最多的。在程序中按照它们的角色来分类这些对象并且鼓励你的基础代码也按照这个来划分。 这三种角色是: 模型:这是一种暂时保存你程序数据和定义如何操作它的对象。一个例子,在你的程序中 Album 类就是一个模型。 视图:这种对象是翻译 2015-07-28 14:49:37 · 280 阅读 · 0 评论 -
iOS 设计模式系列:开篇
原文地址:iOS Design Patterns 原文作者:Eli Ganem 有些专业词汇很难翻译准确,就不翻译了。如果英文阅读没有障碍,还是鼓励大家都读原作。 iOS 设计模式 – 你大概经常听过这样的术语,但是你知道它的真正意思吗?虽然大部分开发者都同意设计模式很重要,但是关于这方面的文章却很少,开发者在写代码的时候,有时候并不会去花很多时间去考虑设计模式。翻译 2015-07-28 14:49:43 · 227 阅读 · 0 评论 -
iOS 设计模式系列:Memento – 备忘录模式
备忘录模式是捕获和具体化当前对象的内部状态。换句话说,就是在某个地方存储个东西。稍后,在不违反封装的情况下能够恢复这个具体化的状态;就是说,一些私有数据被私下存储下来了。 如何使用备忘录模式 添加下面两个方法到 ViewController.m 文件: - (void)saveCurrentState { // 当用户退出应用之后再重新打开,他想要跟他之前退出时一样的状态翻译 2015-07-29 10:04:45 · 413 阅读 · 0 评论