设计模式—工厂模式

          学好设计模式对程序员来说非常重要,设计模式与程序员的架构能力和阅读源代码的能力息息相关,设计模式一共有23种,先介绍一下工厂模式

一.工厂模式:简单工厂模式

                      工厂方法模式

                      抽象工厂模式

1.简单工厂:举个例子,构建对象最常用的就是new一个对象,当我们需要一个键盘时,我们需要键盘的构造方法,需要一个鼠标时我们需要知道鼠标的构造方法,然而当我们需要的更多时,只是增加了相关的类,增加了类之间的关系,程序耦合程度很高,但是这时有一个电脑硬件制作厂,我们只需要把我们需要的告诉工厂,工厂负责制造加工就可以,只用和工厂打交道。这种情况下降低了系统耦合度,当制作键盘时我们不需要关心需要什么零部件,键帽等,这些都是工厂考虑的事情。但是也会有弊端:(1)当工厂生产产品过多,每个产品的修改都要来修改工厂,不止一个类引起工厂变动,这违背了单一职责原则。(2)每成产一个新产品,工厂类增加一个分支,违背了开闭原则。接着诞生了工厂方法模式。

2.工厂方法模式:当我们需要键盘时,就增加一个键盘制作厂,当需要鼠标时,增加一个鼠标制作厂。这样降低了耦合度,只用和各自工厂类打交道,它改善了简单工厂的弊端,当键盘生产过程需要修改只用改键盘制作厂类,鼠标需要修改,则只用改动鼠标制作厂,符合单一原则。需要增加新的产品只用增加新的工厂类就可以,不用修改原有代码,符合开闭原则。

3.抽象工厂模式:这个模式更加神奇,需要将键盘制造厂,鼠标制造厂抽象为两个接口,调用接口中的方法,抽象工厂中还有反射,配置文件这个具体是啥?

 

              

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 13
    评论
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值