大话设计模式
0o怀可o0
这个作者很懒,什么都没留下…
展开
-
iOS 设计模式之策略模式( Strategy)
超市搞活动后,计算活动后商品的价格,使用策略模式实例地址:https://github.com/clairehu7/DesignPatterns 02Strategy原创 2016-02-17 11:36:48 · 684 阅读 · 0 评论 -
iOS 设计模式之简单工厂方法模式(SimpleFactoryMethod)
本系列文章为读《大话设计模式》后的读书笔记。《大话设计模式》一书中,简单方法模式依靠实现一个计算器讲解。补充说明: 简单工厂模式: 简单工厂模式(Simple Factory Pattern)属于类的创建型模式,又叫静态工厂方法模式(Static FactoryMethod Pattern),是通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类,工厂:这个工厂类是简单工厂模原创 2016-02-17 11:16:17 · 652 阅读 · 0 评论 -
iOS 设计模式之装饰模式(Decorator)
给一个人穿上衣服,使用装饰者模式给一个人穿上衣服,首先要定义一个 Person 类。 Person 有一个 name,还可以展示自己穿了什么。//Person.h@interface Person : NSObject@property (nonatomic, strong) NSString *name;- (void)show;@endself.name 为 property,其实不用重原创 2016-02-17 13:38:13 · 2162 阅读 · 0 评论 -
iOS 设计模式之代理模式(Proxy)
代理模式是 iOS 开发过程中一种非常常见的模式。小明要追求小红,但是小红不认识小明,小明就让小强帮自己送花,这就是代理模式:为其他对象提供一种代理以控制对这个对象的访问。我的理解是,小明(追求者)决定送什么(方法实现),而小强(代理人)决定什么时候送(方法调用)。当追求者不知道被追求者的名称时,由代理人传入名字。实现://追求者小明 Proxy.h#import "Proxy.h"@interf原创 2016-02-18 00:20:48 · 1104 阅读 · 0 评论 -
iOS 设计模式之工厂方法模式(FactoryMethod)
工厂方法模式克服了简单工厂模式违背开放-封闭原则的缺点,保持了封装对象创建过程的优点。要更换对象时,无论用简单工厂模式还是工厂方法模式,都可以不用做大的改动,就可以实现,降低乐乐客户程序与产品对象的耦合。工厂方法模式是简单工厂模式的进一步抽象和推广,缺点是,每加一个产品,就要加一个产品工厂的类,增加了开发量。实例地址:https://github.com/clairehu7/DesignPatter原创 2016-02-22 14:29:44 · 519 阅读 · 0 评论 -
iOS 设计模式之原型模式 (Prototype)
原型模式从一个对象在创建另一个对象,而不需知道任何创建细节。一般在初始化信息不变化的情况下,使用原型模式是最好的方法,即隐藏了对象创建的细节,对性能又大大提高。在 iOS 开发中,体现原型模式的是 copy 和 mutableCopy。copy 指的是复制对象,返回一个不可变的对象,是浅拷贝。NSArray *arrA = @[@"1",@"2",@"3",@"4"];id arrACopy =原创 2016-02-23 09:36:20 · 939 阅读 · 1 评论 -
iOS 设计模式之模版方法模式 (TemplateMethod)
模版方法模式实际就是把不变的行为放在父类,把自定义行为放在子类。我曾经写过一个控件,只有一个类,然后通过枚举设置它的 type,在 .m 中,通过 type 完成不同的实现。(这个 viewController 的 UI 是固定的,不同的 type 是在装载不同的 model)只有一个类,看似较为简单,但实际上 type 增加到5、6个的时候,类中的代码已经很多,而且不好维护。这样写违反了开放-封闭原创 2016-02-24 14:47:48 · 514 阅读 · 0 评论 -
iOS 设计模式之外观模式 (Facade)
外观模式依然是为了解耦存在的,创建一个 Facade 类,提供简单的接口,减少类之间的依赖。Facade 类可以提供遗留代码的比较清晰的简单接口,让新的类与 Facade 对象交互, Facade 对象与老类的类交互。实例地址:https://github.com/clairehu7/DesignPatterns(08Facade)原创 2016-02-24 15:51:30 · 742 阅读 · 0 评论 -
iOS 设计模式之建造者模式 (Builder)
建造者模式是当在创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时适用的模式。建造者模式包含产品类(Product)、抽象建造者类(Builder)、具体建造者类(ConcreteBuilder1、ConcreteBuilder2…)和指挥者类(Director)从下面的代码中看各个类的使用:PersonBuilder *builder = [[PersonThinBuilder al原创 2016-02-25 10:59:37 · 1540 阅读 · 0 评论