
设计模式
码农の一天
无聊の一天
展开
-
组合模式
组合模式让我们可以把相同的基类型的对象组合到树状结构中,其中的父节点包含同类型的子节点。这种树状结构形成“部分—整体”的层次结构。何时使用:1想通过对象抽象的树形表示(部分-整体层次结构); 2想让客户端统一处理组合结构中的所有对象。源代码1、抽象类Componentpublic abstra原创 2015-01-08 18:23:31 · 226 阅读 · 0 评论 -
设计模式——策略模式
出行旅游:我们 可以有几个策略可以考虑:可以骑自行车,汽车,做火车,飞机。每个策略都可以得到相同的结果,但是它们使用了不同的资源。选择策略的依据是费用,时间,使用工具还有每种方式的方便程度 。 结构什么是策略模式定义一系列的算法,把每一个算法封装起来, 并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。策略模式的用途案例案例下载转载 2016-01-28 09:03:23 · 295 阅读 · 0 评论 -
设计模式——MVC模式
模型-视图-控制器(Model-View-Controller,MVC)是Xerox PARC在20世纪80年代为编程语言Smalltalk-80发明的一种软件设计模式,至今已广泛应用于用户交互应用程序中。在iOS开发中MVC的机制被使用的淋漓尽致,充分理解iOS的MVC模式,有助于我们程序的组织合理性。 模型对象模型对象封装了应用程序的数据,并定义操控和处理该数据的逻辑和运算。例如,模型对象可能转载 2016-01-27 10:17:31 · 631 阅读 · 0 评论 -
设计模式——单例模式
什么是单例模式单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。实现单例模式的三种方法+(instacetype *)sharedManager{ static User *user = nil; static dispatch_once_t predicate; dispatch_once(&predicate,^{ user = [原创 2016-01-26 13:29:23 · 310 阅读 · 0 评论 -
设计模式——原型模式
什么是原型模式?原型模式属于创建性设计模式,它通过拷贝的方式快速创建一个对象,这里拷贝的方式有两种:1.)浅拷贝(指针拷贝); 2.)深拷贝(值拷贝);采用原型模式创建一个新的对象效率更高。什么是深拷贝和浅拷贝?深拷贝也叫做值拷贝,新创建的对象会在内存中开辟新的空间,而把被拷贝对象的值拷贝过来;浅拷贝也叫做指针拷贝,新创建的对象的指针与原对象的指针指向相同的内存空间,并有相同的值,浅拷贝的对象就如同原创 2016-01-26 10:38:23 · 267 阅读 · 0 评论 -
IOS开发中的几种设计模式介绍
(一)代理模式应用场景:当一个类的某些功能需要由别的类来实现,但是又不确定具体会是哪个类实现。优势:解耦合敏捷原则:开放-封闭原则实例:tableview的 数据源delegate,通过和protocol的配合,完成委托诉求。列表row个数delegate自定义的delegate(二)观察者模式应用场景:一般为model层对,controller和view进转载 2014-12-05 17:49:51 · 453 阅读 · 0 评论 -
简单介绍ios Delegate的使用
ios 的 delegate经常出现在 model 与 controller之间的通信。delegate中文叫做委托,就是委托别人帮你完成的意思。比如 我写了个interface,服务器返给我我要的数据,同时告诉我success,那么我在controller怎么接收到这个interface的信息呢。 我的实现是这样子的:在interface中写一个delegate,(这个delegate 可以直接转载 2014-12-07 10:06:35 · 363 阅读 · 0 评论 -
为什么delegate属性使用assign而不是retain?
首先delegate要使用assign而不是retain,这个问题大家通过看iOS的api就可以了,最典型的是tabView里面的delegate和datasource都是用的assign。一个对象没必要管理自己delegate的生命周期,或者说没必要拥有该对象,所以我们只要知道它的指针就可以了,用指针找到对象去调用方法,也就是委托实现的感觉。或者我们换个角度,从内存管理方面也可以转载 2014-12-05 18:45:13 · 835 阅读 · 0 评论 -
设计模式分类
对象创建 原型 工厂方法 抽象工厂 生成器 单例 接口适配 适配器 桥接 外观 对象去耦 中介者 观察者 抽象集合 组合 迭代器 行为扩展 访问者 装饰 责任链 算法封装 模板方法 策略原创 2015-01-08 13:07:40 · 368 阅读 · 0 评论 -
设计模式——观察者模式
比如你想知道美国最近放生了些新闻,你可能会订阅一份美国周刊,然后一旦美国有了新的故事,美国周刊就发一刊,并邮寄给你,当你收到这份报刊,然后你就能够了解美国最新的动态。其实这就是观察者模式,A对B的变化感兴趣,就注册为B的观察者,当B发生变化时通知A,告知B发生了变化。这是一种非常典型的观察者的用法,我把这种使用方法叫做经典观察者模式。经典观察者模式经典观察者模式被认为是对象的行为模式,又叫发布-订阅原创 2016-01-31 10:35:27 · 392 阅读 · 0 评论