工厂方法——设计模式系列

原创 2012年03月30日 10:49:40

        工厂方法大家都很熟悉了,简单概括就是专门创建几个类来创建业务逻辑对象,它专注于让子类决定创建什么对象。

        工厂方法在以下情形下会用到:编译器无法准确预期要创建对象的类;类想让其子类决定在运行时创建什么。要实现这一目标,就需要有一个产品父类和生成器父类。

        核心代码如下:

- (void) loadCanvasViewWithGenerator:(CanvasViewGenerator *)generator    //CanvasViewGenerator是父类生成器,当需要创建对象的时候传入相应的生成器

{

  [canvasView_ removeFromSuperview];

  CGRect aFrame = CGRectMake(0, 0, 320, 436);

  CanvasView *aCanvasView = [generator canvasViewWithFrame:aFrame];      //创建对象,子类覆盖此方法

  [self setCanvasView:aCanvasView];

  NSInteger viewIndex = [[[self view] subviews] count] - 1;

  [[self view] insertSubview:canvasView_ atIndex:viewIndex];

}


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

设计模式——工厂方法 Java源代码

本程序改编自《Head First Design Patterns》中的Pizza例子,我本学期早上经常吃包子。总共有11个类:

Java设计模式——工厂方法(Factory Method)

什么是工厂方法定义一个创建产品对象的工厂接口,让子类决定实例化哪一个类,将实际创建工作推迟到子类当中。它的核心结构有四个角色,分别是 【抽象工厂】Factory : 具体工厂类必须实现这个接口。在...

浅谈JAVA设计模式之——工厂方法(FactoryMethod)

一、概述             定义一个用于创建对象的接口,让子类决定实例化哪一个类。FactoryMethod使一个类的实例化延迟到其子类。       二...

设计模式——工厂方法

关键词:工厂方法在简单工厂的基础上,把负责生产对象的工厂类抽象成一个抽象类,这样我们要扩展工厂类的时候,就只要增加,不须要修改工厂类。工厂方法模式概述:工厂方法模式中抽象工厂类负责定义创建对象的接口,...

设计模式——工厂方法

参考:设计模式深入浅出 四、工厂方法模式 工厂方法模式去掉了简单工厂模式中工厂方法的静态属性,使得它可以被子类继承。这样在简单工厂模式里集中在工厂方法上的压力可以由工厂方法模式里不同的工厂子类来分...

设计模式(4)——Factory method(工厂方法)

工厂方法的作用? 工厂方法又称为虚拟构造器,它定义了一个用于创建对象的接口,让子类决定实例化哪一个类。它的UML图如下:   上图中,Product定义了一个接口用于Factory创...

设计模式(二)——工厂方法

简单工厂有一个问题就是增加产品类型时违背了开闭原则,工厂方法解决了这一问题。工厂方法包含四个部分:抽象产品,具体产品,抽象工厂,具体工厂。 工厂方法的技术核心是多态,通过多态的使用,工厂方法保留了简...

设计模式1——工厂方法

前言 有一些奉为经典的东西,不能只看一遍,要多看,每次都能有新的认识。 技术容易学会,但是思想不是一朝一夕就能参透的。设计模式对于框架设计和提高代码质量作用很大。前段时间在看设计模式方面的书籍,一...

设计模式讲解与代码实践(三)——工厂方法

本文讲解了工厂方法(Factory Method)设计模式的使用目的、基本形态及各参与者,并结合示例代码,讲解了该设计模式在具体业务场景下的使用。

设计模式——工厂方法 FactoryMethod

FactoryMethod
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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