工厂模式、单例模式、策略模式

文章通过比喻解释了工厂模式如何将创建对象的责任从客户端转移给专门的工厂,而策略模式关注的是策略制定而非实现细节,两者都实现了客户端与实现者的解藕,但焦点不同,工厂模式着重于对象的创建,策略模式强调运行时的可变性和算法标准。
摘要由CSDN通过智能技术生成

工厂模式把创建对象的责任从客户端推出去,集中到工厂中创建。

以前生产力不发达的时候,社会分工不明确,每家都会种小麦,收割,磨面粉,自已自足。当面粉的生产工艺提升之后,所有家庭都需要提升面粉的生产工艺。随着生产力的发展,工业化来临,面粉的生产工艺需要使用机器,人们不再愿意如此高昂的成本,此时就需要再次具体的社会分工,于是面粉厂诞生,专注于磨面粉。每个家庭都放弃了生产面粉,把生产面粉的责任推出去,推给面粉厂。人们不再关心,生产面粉的工艺是怎样的,需要购买面粉,只管去跟工厂要,而不关心工厂是怎样生产的。工厂也会准确无误的生产出人们想要的面粉。当面粉生产工艺再次提升时,只需要工厂更新它的生产工艺即可。工厂的出现,使得面粉的生产工艺彻底的跟每个家庭解藕。不再发生关系。

单例模式把创建对象的责任拉回来,掌控在自已手中。跟工厂模式完全相反。

策略模式专注于要做什么,而不管怎么做(面向策略,而不是面向实现)。仅仅制造出标准即可,有了这个标准,就可以统一的去调用。也使得运行时可变成为了现实。将要做什么(策略)和由谁来做(实现)解藕。调用者不关心由谁来做,调用者只关心自已要做什么。

看起来工厂模式跟策略模式的共同点都是只关心要做什么,而不关心由谁来做。都是将客户端和实现者解藕,但是工厂模式侧重于怎样产生对象。而策略模式更侧重于制造算法(策略)标准。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

煎饼果子不加盐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值