设计模式

1、题目分析

    • 它主要由三个角色组成,工厂类,抽象产品角色,具体产品角色。
      在女娲造人这个题中,男人,女人,女娲工厂类为接口类,机器人都是具体产品角色
    • 工厂方法模式
      它主要由四个角色组成,抽象工厂角色,具体工厂角色,抽象产品角色,具体产品角色。抽象工厂是具体工厂必须实现的接口,具体工厂调用以创建对应的具体产品的对象,抽象产品是具体产品实现的接口,具体工厂角色所创建的对象就是此角色的实例。
      在空调这个题中,空调工厂是工厂接口,海尔工厂和美的工厂都是具体工厂,产品接口类是抽象产品,海尔空调和美的空调都是具体产品。
    • 抽象工厂模式
      产品族的定义是位于不同产品等级结构中,功能相关联的产品组成的家族。它是最抽象,最具一般性的,给客户端提供一个接口,可以创建多个产品族中的产品对象。而它的角色与工厂方法模式如出一辙。
      在电脑配件这一题中,PcRAM和MacCPU属于同一个产品族,PcQRAM和MacRAM属于同一个产品树(产品等级结构)。factory属于抽象工厂接口,Pcfactory和Macfactory属于具体工厂,CPU和RAM属于抽象产品接口,PcCPU和MacCPU实现CPU接口,PcRAM和MacRAM实现RAM接口。2、

2、类图设计(使用UML的类图结构设计)

 

女娲

空调

电脑

 

3、运行结果

4、经验归纳

通过这次编写程序,我学习到了三种设计模式的相似之处和区别,它们都是创建型模式,它们的功能都是帮助我们把对象的实例化部分抽取了出来,优化系统的架构,增强系统的扩展性。
需要注意的是,工厂模式的接口只会返回一种类型的实例。
区别:

  • 简单工厂 :用来生产同一等级结构中的任意产品。
    简单工厂模式的工厂类一般是使用静态方法,通过接收的参数的不同来返回不同的对象实例。(对于增加新的产品不可行)

②工厂模式 :用来生产同一等级结构中的固定产品。
工厂方法是针对每一种产品提供一个工厂类,通过不同的工厂实例来创建不同的产品实例。支持增加任意产品)   

  • 抽象工厂:用来生产产品族的全部产品。
    应对产品族概念的。(对于增加新的产品不可行;支持增加产品族)

 

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值