Unity设计模式之工厂模式

Unity设计模式—抽象工厂模式 抽象工厂模式比工厂方法模式的抽象化程度更高,它提供一个创建一系列相关或相互依赖对象的接口,而无需指定他们的类。 阅读详情
**工厂模式是我们最常用的实例化对象模式了,是用工厂方法代替new操作的一种模式。工厂模式克服了简单工厂模式违背开放-封闭原则的缺点,又保持了封装对象创建过程的优点**
首先是工厂抽象接口,用于具体的工厂类继承
using System;
using AssemblyCSharp;
namespace FactoryPackage
{
    public interface IFactory
    {
        Operation CreateOperation();
    }
}

然后是具体的工厂类

using System;
using AssemblyCSharp;
namespace FactoryPackage
{
    class AddFactory :IFactory  //加法工厂
    {
        public Operation CreateOperation()
        {
            return new OperationAdd ();
        }

    }
    class SubFactory :IFactory //减法工厂
    {
        public Operation CreateOperation()
        {
            return new OperationSub ();
        }

    }

    class MulFactory : IFactory //乘法工厂
    {
        public Operation CreateOperation()
        {
            return new OperationMul ();
        }
    }
    class DivFactory: IFactory //除法工厂
    {
        public Operation CreateOperation()
        {
            return new OperationDiv ();
        }
    }
}

最后是客户端代码

using System;
using UnityEngine;
using AssemblyCSharp;
namespace FactoryPackage
{
    public class Client : MonoBehaviour
    {
        void Start()
        {
            IFactory operFactory = new AddFactory ();
            Operation oper = operFactory.CreateOperation ();

            oper.NumberA = 2;
            oper.NumberB = 5;
            Debug.Log ("Result:"+oper.GetResult ());

        }
    }
}
第五章 PCIe介绍 5.1-5.7 为什么SSD要用PCIe接口?因为它快,比SATA快。通道,PCIe最多可以有32个通道。两个设备之间的PCIe连接,叫做一个Link。如下图,设备A和设备B是个双向连接,两个PCIe设备之间,有专门的发送和接收通道,数据可以同时往两个方向传输,PCIe Spec称这种工作模式为,可以理解为。和PCIe一样,SATA有独立的发送和接收通道。但与PCIe工作模式不一样,同一时间,SATA只有一条通道可以进行数据传输。这种工作模式称为。与SATA单通道不同,PCIe连接可以通过增加通道数扩展带宽。 阅读详情

相关推荐

轴承故障诊断——领域知识

幅域分析、频域分析及轴承方面的领域知识

qq_58516607的博客 3532

Unity设计模式——工厂模式

在抽象工厂模式中,工厂不仅仅是一个单独的类,而是一个由多个工厂组成的层次结。首先我们定义一个工厂接口 ItemFactory,该接口包含一个用于创建道具的抽象方法 CreateItem,具体的工厂类实现该方法来创建具体的道具实例。定义一个简单工厂类 ItemFactory,该类包含一个用于创建道具的静态方法 CreateItem,根据传入的参数不同,创建不同的道具实例并返回。简单工厂模式是最基本的工厂模式,我们只需要一个工厂类,它根据客户端的请求返回一个具体的对象实例。首先我们创建一个道具的基类。

羽阿呆的博客 1359

树莓派教程(基于python编程)--入门篇

一:格式化SD卡 SD卡插入读卡器连接电脑,使用SDFormatter对SD卡进行格式化 (重装烧录也要进行着SD卡格式化操作) 二:下载官方镜像 http://downloads.raspberrypi.org/raspbian_latest 三:烧录SD卡 使用Win32DiskImager将镜像烧录到格式化后的SD卡 SD卡盘根目录(/boot)下新建一个命名为ssh的...

qq_42109746的博客 6万+

Unity 设计模式 之 创造型模式-【工厂方法模式】【抽象工厂模式】

设计模式是指在软件开发中为解决常见问题而总结出的一套可复用的解决方案。这些模式是经过长期实践证明有效的编程经验总结,并可以在不同的项目中复用。设计模式并不是代码片段,而是对常见问题的抽象解决方案,它提供了代码结构和模块间交互的一种设计思路,帮助开发者解决特定的设计问题。设计模式的特点:通用性:设计模式针对的是软件开发中常见的设计问题,适用于各种软件工程项目。可复用性:设计模式可以在不同项目和环境下被重复使用,提高代码的可维护性和扩展性。可扩展性:设计模式有助于让代码结构更加灵活,易于扩展和修改。

仙魁XAN 1849

Palabos User Guide中文解读 | 第五章 | Palabos编程 (跳过了第四章Palabos-Java接口)

作者的话:本人在学习palabos时,发现国内中文资料甚少,恰好网上可以直接搜到palabos user guide这种英文资料,加之时间充裕,便打算开始翻译,翻了一节后发现这可能算侵权,就比较伤脑筋,突然想到自己写中文解读即可,便有了下面的博客。 Palabos User Guide Release 1.0 r1 Copyright © 2019 University of Geneva Jul...

Yulan Fang's notes. 2298

瑞芯微rk3568移植openbmc(一)----关于ob移植的优缺点

基于rock3a的单板,CPU为瑞芯微rk3568的环境,移植了openbmc

feixiang3839的专栏 5537

Unity工厂模式

工厂是一种创建型设计模式。通俗来讲就是提供一种封装对象创建的方式,将对象的创建和使用区分开。就是Unity里面通常用到的创建和管理对象。

ccccco1的博客 1445

yolov5 onnx推理时报错[ONNXRuntimeError] : 2 : INVALID_ARGUMENT : Unexpected input data type.

yolov5 onnxruntime 推理报错

zjulkw的博客 1221

Unity常用设计模式之工厂模式

以上就是Unity中常用的工厂模式的介绍,包括简单工厂模式、工厂方法模式和抽象工厂模式。在实际开发中,根据具体的需求选择合适的工厂模式来创建对象,可以让我们的代码更加灵活和易于扩展。工厂模式是一种常用的设计模式,它属于创建型模式,用于创建对象的过程中。简单工厂模式是工厂模式的最简单形式,它包含一个工厂类和多个产品类。抽象工厂模式将工厂接口抽象为一个工厂族接口,每个具体的工厂类都对应一个工厂族。工厂方法模式是一种更加灵活的工厂模式,它将工厂类抽象为一个接口,每个具体的产品类都有对应的工厂类。

Unity_RAIN的博客 1158

产品经理如何运用AI提升工作效率

AI技术的应用为产品经理的工作流程带来了显著的效率提升。从需求收集到产品上线,AI可以在多个阶段提供智能化支持,帮助产品经理更好地理解用户需求、优化产品设计、提高开发和测试效率。在未来,随着AI技术的不断发展,产品经理将能够更加高效地管理产品生命周期,为用户提供更优质的产品体验。应用 | AI + 千行百业欢迎关注我的后续博文,我将分享更多关于人工智能、自然语言处理和计算机视觉的精彩内容。

不想宅的冷同学 1336

由浅入深理解Latent Diffusion/Stable Diffusion(5):利用预训练模型快速开始自己的科研任务

从零开始训练一个stable diffusion大概需要16万美元和1个月的时间,这对于一般的科研工作者来说难以承受,所以如何利用预训练模型快速开始自己的科研训练是一个非常有价值的问题。这篇博客将演示如何利用预训练模型快速开始自己的科研任务,希望对大家有所帮助!

沉迷单车的追风少年 3368

[Unity设计模式与游戏开发]工厂模式

前言 工厂模式(Factory Design Pattern)也是游戏开发中比较常用的创建型模式,一般情况下,工厂模式分为三种更加细分的类型:简单工厂、工厂方法和抽象工厂。在GoF设计模式一书中,它将简单工厂模式看做是工厂方法模式的一种特例,所以工厂模式只被分成了工厂方法和抽象工厂两类。举个例子在游戏开发中哪儿用到了工厂模式,我随意看到了FairyGUI中创建UI组件相关的源码就用到了简单工厂模式...

学无止境的专栏 8392

(9-2)离线强化学习:离线强化学习的主流方法

本文介绍了三种离线强化学习的主流约束策略优化方法:BCQ、CQL和Fisher-BRC,并通过CartPole环境进行性能比较。BCQ利用生成模型约束动作选择并引入扰动网络;CQL通过正则化Q值抑制对未见状态-动作对的高估;Fisher-BRC使用Fisher散度正则化策略分布。实验结果表明,三种方法各有优势,其中CQL表现最为稳定。文章还指出,为获得更好的性能,需要更大的数据集和更长的训练轮次。这些方法通过限制策略优化范围,有效提高了离线强化学习的稳定性和泛化能力。

码农三叔 1536

设计模式 简单工厂,策略模式,几种基本原则,Unity基础

设计模式(学习笔记) 感受设计演变过程中蕴含的大智慧, 体会乐于怒的程序人生中值得回味的一幕幕。 设计模式来自于建筑领域,作为软件工程的一个分支,是在软件工程实践过程中,程序员们总结出的良好的编程方法。 第一种模式 1.简单工厂模式 图片来源,点这里 上面是简单工厂的UML图 我简单介绍一下 首先是一个主类,下面有3个子类(可以是多个)继承它 每个子类都是一个方法,都独自封装成类 把它们的共性写入基类(也就是父类)写成抽象或者写成虚函数的形式 ...

qq_53120038的博客 2708

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

看完就懂Unity设计模式那些事(单例,观察者,工厂)

break;break;break;游戏中通过ItemFactory创建并使用道具,只能创建ItemBase类型的对象//创建并使用生命药水//创建并使用加速药剂。

m0_61188201的博客 2425

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

设计模式一:简单工厂模式(Unity+C#)

今天开始学习记录一下学习23种设计模式,本身作为unity开发程序员,那就以unity为开发环境,C#为开发语言来学习设计模式,写下此博客来记录自己的学习过程,学习即成长。水平有限,多多担待。博客以自己的理解来写,如有错误,多多指教。 设计模式一:简单工厂模式 说到简单工厂模式,说明此模式是用来生产的,也就是用来创建实例,我们平常的实例化就是new一个对象,可如果要生产多个不同的对象应该怎么办?我们对实例化对象进行管理,也就是说想要一个实例,不需要在乎这个实例是如何产生的,传入一个类型/特定字符串/特定

qq_34845917的博客 1186

Unity 开发中的常用设计模式(第二章第1节:工厂模式)

工厂模式的优点是,将产品族对象的产生流程整合于同一个类下实现,并提供唯一的工厂方法,让项目内的“对象产生流程”更加独立。不过,当产品族过多时,无论使用哪种方式,都会出现工厂子类数量过多或 switch case 语句过长的问题。

x2724776621的博客 2358

[Unity设计模式]简单工厂模式

文章介绍并完成一个简单工厂模式

2303_80376941的博客 377

Unity 游戏设计模式:工厂模式

抽象工厂模式是工厂方法模式的加强版,抽象工厂模式与工厂方法模式最大的区别在于,工厂方法模式针对一个产品对应一个工厂类,而抽象工厂模式面对多个产品对应一个工厂类,一个工厂角色可以负责多个不同产品等级结构中的产品对象的创建。单工厂模式将对象的创建过程放在一个单独的工厂类中,使得客户端代码不直接依赖于具体的类实现。这相当于是把原本会随着业务扩展而庞大的简单工厂类,拆分成了一个个的具体产品工厂类,这样代码就不会都耦合在同一个类里。如果需要添加新的游戏元素或功能,只需要修改工厂类,而不需要修改客户端代码。

知识无止境 897

Unity 常用设计模式之工厂模式

工厂模式(Factory Pattern)是 游戏开发中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对用户暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。 先来看一个生活中的真实的案例,某个品牌的汽车制造工厂,对外提供生产这个品牌的不同型号汽车的服务。外界只要下一个”汽车型号”, 工厂可以根据型号构建出来不同型号的汽车。这样外界不用关心工厂内部是怎么运作的,当用户需要某个型号的汽车的时候调用接口就可以了,同时内部工

biliskener的博客 3496

Unity设计模式-工厂模式:创造的艺术

工厂模式定义了一个创建对象的接口,但由子类决定实例化哪个类。它使一个类的实例化延迟到其子类。

weixin_51186493的博客 1427

Unity23种设计模式之 工厂模式

工厂方法模式:将“对象的创建”延迟到子类中完成,由子类决定实例化哪一个具体类。重点只有一句:👉“谁创建对象,不是使用者决定,而是由工厂的子类决定”

qq_63850097的博客 411

Unity 设计模式:工厂模式Factory Pattern的应用

深入理解工厂模式Factory Pattern的应用的核心概念与实践方法,掌握关键技术要点,了解实际应用场景与最佳实践。本文属于《Unity工程师成长之路教程》Unity 设计模式篇(第十一篇)。

输出倒逼输入,写作驱动成长。 1万+
上一篇: Unity设计模式之代理模式
下一篇: Unity设计模式之适配器模式
Makcy_
博客等级 码龄12年 6粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值