美文网首页
Untiy基础巩固:C#单例模式在Untiy中的使用

Untiy基础巩固:C#单例模式在Untiy中的使用

作者: hanabusters | 来源:发表于2016-09-13 16:46 被阅读0次

含义

单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。

而在Untiy当中,我们通常需要一个脚本去记录与管理一些贯穿整个游戏场景伊始的数据,比如玩家的成绩,生命值,关卡等级等等,这个时候就需要一个脚本始终处于被唤醒状态,并且只有一个,而这个时候,单例模式则是最好的解决方案。

单例的应用

实现方式一

实例一

优点:不需要重构什么,直接编码。方便其他类使用。

缺点:每个要实现单例的类都需要手动写上相同的代码,代码重复对我们来说可不是好事情。同时需要把实现单例的类手动绑定到游戏对象上才可以使用。

实现方式二

单例基类泛型 单例继承模版

优点:通过代码重构,去除掉了重复的代码。想具有单例功能的类。只需要继承模板基类就可以具有单例的作用。

缺点:模板单例不需要绑定到游戏对象,但是被其他脚本调用的需要手动绑定到游戏对象上才可以使用。

实现方式三

单例基类泛型

继承模板基类,实现方式同方式二里的第二步一样。

优点:不需要手动绑定单例到游戏对象就可以使用。

缺点:这些都是游戏对象,在Untiy中只能在主线程中进行调用。所以网络多线程方面会产生单例的不唯一性,在这里就可以忽略了。

相关文章

  • Untiy基础巩固:C#单例模式在Untiy中的使用

    含义 单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中...

  • Untiy基础巩固:C#中out与ref 关键字的用处与基础

    前言: 在Untiy的使用时,经常会遇到需要使用out/ref关键字按引用传递的时候。 这个时候才发现自己的基础相...

  • 2020-07-02 - C#单例

    C#单例模式 使用懒加载模式创建, 写法比较优雅.

  • Unity sqlite手动开启BEGIN 和 COMMIT时u

    最近项目在untiy中使用sqlite作为玩家存档时出现一个问题,在android上当手动使用BEGIN 和 CO...

  • 设计模式

    《C#设计模式》 《C#设计模式》-设计模式概述 《C#设计模式》-面向对象设计原则 《C#设计模式》-单例模式 ...

  • 【Unity项目实战】http网络插件和性能优化

    使用http网络请求:Untiy中常用通信(HTTP)插件BestHttp 性能优化:Unity性能的全面优化详解

  • Java单例模式(Singleton)

    1. 什么是单例模式 Java中单例(Singleton)模式是一种广泛使用的设计模式。单例模式的主要作用是保证在...

  • Untiy 延时

    Coroutine 如果在Unity中需要等待几秒后才开始执行该方法,那么就可以使用Coroutine(协程)定义...

  • 单例模式

    单例模式介绍 把单例模式放到多线程基础这块,是因为单例和多线程有一点的关系。何为单例模式? 在它的核心结构中只包含...

  • iOS单例模式容错处理

    ios 单例模式容错处理 1、单例模式的使用和问题解决 在ios开发的过程中,使用单例模式的场景非常多。系统也有很...

网友评论

      本文标题:Untiy基础巩固:C#单例模式在Untiy中的使用

      本文链接:https://www.haomeiwen.com/subject/qvumettx.html