设计模式之工厂模式

本文详细介绍了设计模式中的三种工厂模式:简单工厂模式、工厂方法模式和抽象工厂模式,包括各自的概念、使用场景、优缺点,并提供了相关代码实践链接。
摘要由CSDN通过智能技术生成

目录

一   简单工厂模式

二   工厂方法模式

三   抽象方法模式


一   简单工厂模式

简单工厂模式(Simple Factory Pattern)是指由一个工厂对象决定创建出哪一种产品类的实例,但它不属于 GOF,23 种设计模式。

使用场景:简单工厂适用于工厂类负责创建的对象较少的场景,且客户端只需要传入工厂类的参数,对于如何创
建对象的逻辑不需要关心。

问题:工厂类的职责过重,不易于扩展过于复杂的产品结构。

二   工厂方法模式

工厂方法模式(Fatory Method Pattern)是指定义一个创建对象的接口,让实现的这个接口的类来决定实例化哪个类,工厂方法让类的实例化推迟到子类中进行。

使用场景:

1,创建对象需要大量重复对象。

2,应用层不依赖于产品类实例如何被创建,实现等细节。

3,一个类通过其子类来指定创建哪个对象。

缺点:

1,类的个数过多,增加复杂度。

2,增加了系统的抽象性和理解性。

三   抽象方法模式

抽象工厂模式(Abastract Factory Pattern)提供一系列相关或相互依赖的对象的接口,无需制定他们具体的类。

使用场景:

一系列相关产品对象,一起使用创建对象需要大量重复代码

缺点:

1,规定了所有可能被创建的产品集合,产品族中扩展新的产品困难,需要修改抽象工厂的接口。

2,增加了系统的抽象性和理解性。

练习代码:https://github.com/sqwf/learning.git

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值