![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C#
文章平均质量分 90
心之凌儿
写代码是专业的
展开
-
C# 委托基础与入门
前言在成熟的项目中,代码结构变复杂时,委托就是必不可少的,通过委托,可以很好的实现对观察者模式的需求处理什么是委托百度百科对于这个词语的解释是把自己的事情交给别人来做,如果同个这个词来对于日常生活的理解确实很复杂,因为把事情交给别人来做的原因很多,很难理解为什么把事情交给别人来做。但是在编程中,这个词就变的单纯许多了,同样可以依据百度百科:百度百科对于委托的解释:委托是一个类,它定义了方法的类型,使得可以将方法当作另一个方法的参数来进行传递,这种将方法动态地赋给参数的做法,可以避免在程序中大原创 2021-06-09 09:53:26 · 919 阅读 · 1 评论 -
C# 数据容器详解:Array、List、Dictionary、LinkedList、Queue、Stack
ArrayList关于ArrayList的原理:核心是数组:可以动态扩容:通过创建一个更大的新数组,来将原来的数组转移到新数组插入删除方便存储的是对象: 需要装箱、拆箱操作 是不安全类型List核心是数组: 可以动态扩容:同样是创建新的更大数组来迁移数据 使用泛型来实现对装箱拆箱操作的避免内存优化 对于List可以规定长度,来避免 动态扩容操作,这样就可以避免新的内存空间的消耗HashTable键值对形式: ton...原创 2021-04-20 22:38:08 · 2142 阅读 · 3 评论 -
Unity 资源加载的两种方式:Resources和AssetBundle最详细的解析
前言:在游戏开发学习初期,游戏体量较小,如果游戏场景需要Asset中的资源,我们可能会通过拖动的方式,将其添加到游戏场景中。而到了实际工作中,会发现再这样做就会使得各种拖动的资源非常复杂,难以查找与维护关于资源:在Unity中,在Asset文件下的文件都可以称为游戏的资源,例如预制体、模型、材质、纹理、音频、视频、数据文档、场景等等为了避免这样的情况,Unity游戏引擎为我们提供了很多种加载Asset中资源的方式,而我们最常用的主要是Resources和AssetBundle两种方式资源加原创 2021-04-03 21:01:03 · 26037 阅读 · 1 评论 -
Unity 事件管理器
对于继承于MonoBehaviour的脚本:using System.Collections;using System.Collections.Generic;using UnityEngine;public class MainTest : MonoBehaviour{ //声明单例模式 static MainTest _instance; private void Awake() { if (_instance != null)原创 2021-03-18 15:58:09 · 2296 阅读 · 6 评论 -
C# 高级特性:泛型详解
概念理解:百度百科 :泛型是程序设计语言的一种特性。允许程序员在强类型程序设计语言中编写代码时定义一些可变部分,那些部分在使用前必须作出指明。各种程序设计语言和其编译器、运行环境对泛型的支持均不一样。将类型参数化以达到代码复用提高软件开发工作效率的一种数据类型。泛型类是引用类型,是堆对象,主要是引入了类型参数这个概念。C#官方文档:泛型是为所存储或使用的一个或多个类型具有占位符(类型形参)的类、结构、接口和方法。 泛型集合类可以将类型形参用作其存储的对象类型的占位符;类型形参呈现为其字段的类型原创 2021-03-03 19:26:49 · 1088 阅读 · 1 评论 -
Unity 背包系统的完整实现(基于MVC框架思想)
前言:背包系统是游戏中非常重要的元素,几乎每一款游戏都有背包系统,我们使用背包系统可以完成装备栏的数据管理,商店物体的数据管理等等一系列的功能本次案例是基于数据本地存储的方式设计的背包系统,首先在数据管理方面,使用ScriptableObject类来实创建数据仓库,可以保存在游戏系统中,重新开始后依旧可以再次加载出来该数据UI端一、UI搭建创建一个Panel作为背包系统中所有物体的父元素,并为其更换一个背景图片,这样可以使得物体有容纳的空间,能够使得物体更加序列化,更规整:接下来需要对Main原创 2021-02-06 20:35:20 · 25317 阅读 · 54 评论 -
Unity网络编程四:客户端与服务端进行数据传输(Unity登录系统的实现)
前言:我们在完成服务端的搭建与客户端连接客户端的功能后,需要实现两者之间的通信功能C#官方文档给了我们这样一个案例原创 2021-01-29 18:52:35 · 4992 阅读 · 8 评论 -
Unity网络编程二 : 服务器端连接数据库(C#连接MySQL)
服务端需要连接数据库才能与客户端进行数据的交互,本案例使用Mysql作为连接数据库开发环境:VS 2019MySQL.Net一、连接MySQL环境配置为了连接MySQL,需要配置文件MySql.Data.dll,如果使用的是Vs2019,可以直接下载使用,不需要进行自己下载配置, 具体配置方式为:首先直接使用其方法MySqlConnection,在出现错误提示后Alt+Enter显示可能修补的程序,然后选择安装MySQL.Data,VS2019会自动下载安装当然也可以自行手动添.原创 2021-01-21 11:19:29 · 2098 阅读 · 19 评论 -
Unity网络编程一: 基于Socket搭建一个服务器
为了实现Unity与服务器进行数据传输,需要在本地搭建一个服务器,作为服务器端来实现数据的接受与发送,本次使用Socket来实现开发环境:VS 2019.NetUnity2019;一、新建一个项目打开Vs2019新建一个项目,随便选择控制台应用即可,然后对项目进行命名和保存项目路径,这样就完成了一个基本项目的创建。二、新建一个类作为服务器创建启动首先创建一个类CreateServer作为服务器启动类要使用Socket首先需要引入两个类:using System.Net;us.原创 2021-01-20 11:29:07 · 3804 阅读 · 3 评论 -
软件开发那点事-面向对象
前言面向对象对于程序员来讲是一个很重要的概念,不了解面向对象的理论知识,在学习面向对象的语言时就会产生困惑1,面向对象含义起源:早期程序设计都是面向过程,而随着时间的发展问题的复杂度也逐渐提升。这样对于使用面向过程的设计变得越来越复杂而面向对象在这一时刻从天而降,带来了全新的解决问题的方案,并逐渐发展为主流对比:古时候,文章不多的时候,印刷时固定刻板就可以了,而随着文章逐渐增多,每次都重新刻板就很麻烦了,这个时候活字印刷就出来了面向对象和面向过程的区别类似于此:面向对象解原创 2020-12-10 16:57:29 · 294 阅读 · 1 评论