【代码整洁之道】JAVA设计模式——简单工厂模式实战应用思路(含实现代码)!

前言

设计模式只是面试八股文?
看过的文章只告诉了你源码怎么写,没告诉你应用场景?
本文将通过实际业务告诉你,工厂模式的应用场景以及思路,跟我一起学起来!

业务需求

某公园入园系统验票时,可以刷身份证或二维码进行验票
需要开发该验票接口,支持身份证和二维码验票的同时,确保后期如果支持其他验票方式,尽可能小的改动源码

以上就是源哥在实际开发中遇到的需求,当我听完客户描述,脑海中就是四个大字——工厂模式!

为什么选择简单工厂模式

  1. 将创建对象的事交给工厂,客户端不用自己创建对象,明确了各个类的职责
  2. 如果想增加新的对象,只需要增加一个具体的类和具体的工厂类即可,不需要修改工厂方法,满足开闭原则。
  3. 解耦,不用工厂的话,客户端和new对象的代码耦合在一起,工厂创建对象就可以将二者分开解耦。后期维护容易,增强系统的扩展性

实现代码(仅设计模式应用相关)

话不多说我们直接看代码

/**
 * TODO 接口传递模型
 *
 * @author 刘循源
 * @since 2023/7/26
 */
@Data
public class TicketCheckVO {
   
   
    private String certType; //qrCode 二维码验票 idCard 身份证验票
    private String certInfo; //验票信息
}

/**
 * TODO 工厂
 *
 * @author 刘循源
 * @since 2023/7/13
 */

public class TicketCheckingFactory {
   
   

	//使用静态内部类初始化工厂类
    private static TicketCheckingFactory ticketCheckingFactory = new TicketCheckingFactory();
    private static Map checkingMap = new HashMap<>();

	//使用静态代码块,在项目初始化时,实例化对应的实现类,并放入map集合
    static
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值