设计模式之简单工厂模式

来源:互联网 发布:淘宝做客服考试答案 编辑:程序博客网 时间:2024/06/17 11:51

简单工厂模式是工厂模式家族中最简单实用的模式,简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例,主要解决创建“产品”的问题。

简单工程模式中主要涉及三个角色

1,工厂角色

工厂角色是简单工厂模式的核心,它主要定义了一些创建具体实例的内部逻辑功能,可以说是定义一些创建“产品”的具体方法,可以换直接被外部调用,创建需要的产品对象。一般这些方法是抽象方法或者虚函数。

2,抽象产品角色

抽象产品角色可以理解为具体“产品”对象的父类,它负责描述所有一些公共的接口。这些接口一般是抽象方法或者虚函数方法。

3,具体产品角色

具体产品角色是简单工厂模式中要创建的目标,它负责具体的实例化一些“产品”实例。

优点

工厂类可以根据外界信息进行逻辑判断来创建哪个具体的类。可以通过使用工厂类创建出需要的具体

产品对象,不用理会具体的内部信息。明确了各自的职责功能,有利于软件体系结构的优化。

缺点

当系统中需要创建的具体的产品对象越来越多时,会出现工厂类根据不同的外部条件创建不同的产品实例

对象。这种对条件的判断和对具体的产品类型判断糅合在一起,不利于系统的维护。

注:下面是以计算器的实例来体现简单工厂模式的设计方法。源码工程如下链接http://download.csdn.net/download/zhuzi9/9998609