设计模式【二】:工厂模式

简介: 设计模式【二】:工厂模式

写在前面


设计模式,其实在一定程度上代表着最优解,最佳实践,由一部分开发人员根据经验总结而出的解决方案,分别针对不同的场景的最优解决方案。


在当前环境下,设计模式也被开发人员极为推崇,并且利用其解决众多的问题,所以,学习设计模式刻不容缓。


下面我们就来看一下“工厂模式”。


工厂模式与单例模式一样,都是属于创建型设计模式,因为他们都是提供创建对象的解决方案。


工厂模式内部实现提供了接口来进行规范不同情况下创建对象的规则,由实现类对其进行实现,当开发人员去使用时,不需要关心其内部实现逻辑,只需要根据自身的需求实现不同的子类即可。


使用场景


我们最常用的日志收集器,就用到了这个设计模式,我们开发人员在使用的过程中,只需要实现不同的子类,就能判断出我们要使用的日志收集器的类型。


优缺点


优点就是开发人员只需要知道子类名称就可以进行创建对象来调用具体的方法,扩展性非常高,如果加入一种不同的方式,只需要基于接口再创建一个子类即可。


缺点就是随着类型的增多,我们的代码也会变得特别多,创建的类也会增多,长此以往不利于维护。


代码实现


实现一个日志保存接口。


public interface logInterface{
 void save();
}

然后创建对应的工厂类。


保存到A路径下


public class A implements logInterface{
  public void save(){
    //保存到A路径下的逻辑
  }
}

保存到B路径下


public class B implements logInterface{
  public void save(){
    //保存到B路径下的逻辑
  }
}

保存到C路径下


public class C implements logInterface{
  public void save(){
    //保存到C路径下的逻辑
  }
}

最后创建一个工厂类,用于对外统一暴露


public class Log{
  public logInterface(String type){
      if(type.equalsIgnoreCase("A")){
         return new A();
      }else if(type.equalsIgnoreCase("B")){
         return new B();
      }else if(type.equalsIgnoreCase("C")){
         return new C();
      }
      return null;
  }
}


相关文章
|
设计模式 Java
设计模式~工厂模式-03
工厂模式 简单工厂模式 优点: 缺点: 工厂方法模式
53 0
|
设计模式 Java C++
设计模式之工厂模式详解和应用
设计模式之工厂模式详解和应用
67 0
|
2月前
|
设计模式 Java 关系型数据库
设计模式——工厂模式
工厂模式介绍、静态简单工厂模式、工厂方法模式、抽象工厂模式、JDK 源码分析
设计模式——工厂模式
|
6月前
|
设计模式 消息中间件 Java
设计模式之工厂模式(C++)
设计模式之工厂模式(C++)
84 0
|
6月前
|
设计模式 前端开发 API
【设计模式】之工厂模式
工厂模式是一种常用的创建对象的设计模式,它通过封装对象的创建逻辑,提供统一的接口,实现了代码的解耦和可扩展性。在实际开发中,可以根据具体需求选择是否使用工厂模式来创建对象。工厂模式可以应用于任何需要创建对象的场景。通过使用工厂模式,我们可以提高代码的可维护性、可扩展性和可测试性,使得代码更加灵活和易于理解。
75 0
|
设计模式 前端开发 Java
设计模式之工厂模式(1)
工厂模式是一种对象创建型模式,它提供了一种创建对象的最佳实践。在工厂模式中,我们在创建对象时不使用 new 关键字,而是通过调用工厂方法来创建对象。工厂方法是一种在子类中定义的方法,该方法负责实例化对象。工厂方法可以返回不同的对象类型,因此工厂模式可以创建一组相关或不相关的对象。这样就可以将对象的创建和使用解耦。
61 0
|
设计模式 Java C#
设计模式之工厂模式(2)
接着,我们定义一个抽象工厂类AbstractFactory,它有两个抽象方法createShape和createColor,分别返回一个Shape对象和一个Color对象: java
53 0
|
设计模式 SQL 搜索推荐
设计模式之工厂模式(二)
设计模式之工厂模式
111 0
|
设计模式 Java 数据库
设计模式之工厂模式(一)
设计模式之工厂模式
62 0
|
设计模式 消息中间件 Java
一起来学设计模式之工厂模式
前言 目前正在出一个设计模式专题系列教程, 篇幅会较多, 喜欢的话,给个关注❤️ ~ 本节给大家讲一下设计模式中的工厂模式~ 本专题的所有案例代码主要以Java语言为主, 好了, 废话不多说直接开整吧~ 工厂模式 工厂模式是一种常用的设计模式,它提供了一种创建对象的方式,该方式隐藏了对象创建的细节并提供了一个通用的接口,从而使得代码更加灵活和可扩展。在工厂模式中,我们将对象的创建过程封装到一个工厂类中,通过工厂类来创建具体的对象,这样客户端就不需要关心对象的创建过程,只需要调用工厂类提供的接口来获取所需的对象即可。