C语言—工厂模式

一、什么是工厂模式?

工厂模式:是一种创建型设计模式,它用于处理对象创建的问题,特别是在一个类族中。这种模式通过一个共同的接口来创建对象,让子类决定实例化哪一个类。工厂模式使得代码更加模块化,并且将对象创建的逻辑从使用对象的代码中分离出来。

二、工厂模式主要有以下几种形式:

  1. 简单工厂模式(Simple Factory):是一种设计模式,属于创建型模式的一种。它提供了一个创建对象的接口,让子类决定实例化哪一个类。简单工厂模式是工厂模式的简化版本。

  2. 工厂方法模式(Factory Method):是一种创建型设计模式,其核心目的是定义一个用于创建对象的接口,但让实现这个接口的类来决定实例化哪一个类。工厂方法模式将对象的实例化推迟到子类中进行,从而使得类的实例化过程与使用者分离,提高了系统的灵活性和可扩展性。

  3. 抽象工厂模式(Abstract Factory):提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类。

  4. 本文章主要介绍简单工厂模式
    简单工厂模式特点

    代码示例如下:一个工厂类,根据输入参数决定创建哪种产品。

  5. 工厂模式框架:

  6. 未使用简单工厂模式:

  7. 结构体里面的函数已经被定义,将结构体添在链表里面,这就是一个工厂。然后我们可以根据特定的条件,去工厂里面去找对于功能的结构体(遍历链表),找到以后,拿来执行
    使用简单工厂模式如下:

    Animal.h文件



    cat.c


    dog.c


    person.c

    main主函数
  8. 总结:利用工厂模式就会显得方便许多,由于对象的创建逻辑被封装在工厂类中,当需要增加新的产品类型或者修改现有产品的创建逻辑时,只需要修改工厂类的代码,通过main函数中连接链表实现而不需要修改客户端代码就可以完成。 提高代码的可维护性
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值