- 博客(14)
- 资源 (2)
- 收藏
- 关注
翻译 Litjson快速入门
介绍Json是一个简单但功能强大的,用于specify data。它定义了简单的数值类型例如布尔型、数字(整型和实数)和字符串,以及一些数据结构:数组(list)和对象(字典)。LitJSON是一个C#.Net库,用于处理JSON(JavaScript Object Notation)字符串的转换。将JSON映射到Object及反映射为了在.Net程序中使用JSON格式的数据,最先在心中想到的方法是在一个特定类的实例中填充JSON文本,或者一个定制的类,用于匹配输入的JSON文本结构,也可以更通
2021-01-10 23:17:51 2868
转载 Lua的热重载
热重载,就是不重新开unity让代码的变化直接看出来,一般在开发时候使用lua中通过require导入的文件,最终都存在package.loaded这个table中。require会判断是否文件已经加载避免重复加载同一文件所以需要先把package.loaded中对应的内容置空,然后再重新导入for key,val in pairs(package.loaded) do p...
2019-08-13 10:15:39 988
原创 算法学习1——在C#中用链表实现可迭代的泛型栈和队列
学习用书是Robert Sedgewick的算法(第四版),书中代码是用JAVA写的,于是改用C#重写其中的相关代码。栈StackisEmpty 判断栈是否为空size 返回栈大小的int值push 添加一个对象pop 弹出一个对象 public class Stack<T> { public class Node ...
2018-10-26 00:52:41 333
原创 设计模式学习8——观察者模式
定义观察者模式(又称发布-订阅模式)定义了一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。结构图分析Subject将所有的具体主题集合到一起,具有添加和删除具体主题的功能,Notify也担任通知者的角色,运行所有观察者的更新内容Update。当状态发生改变时,使用Notify来对所有的观察者来...
2018-10-21 02:12:37 225
转载 设计模式学习7——建造者模式
定义建造者模式(Builder),将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。结构图分析建造者模式是在当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时适用的模式。由于我们在Builder中把所有组成部件都列出来了,因此当后面我们如果忘记设定具体产品类的某一部件时会编译不通过,起到提示作用。在Director类中控制建造过程,隔离用...
2018-10-21 01:10:43 130
原创 设计模式学习6——工厂方法模式
定义工厂方法模式(Factory Method),定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。结构图代码实例对以前的计算器的简单工厂模式进行修改。using System;using System.Collections.Generic;using System.Linq;using System.Text;usin...
2018-10-21 00:52:28 1146
原创 设计模式学习5——代理模式
定义代理模式(Proxy),为其他对象提供一种代理以控制对这个对象的访问。其实就是在访问对象时引入一定程度的间接性,因为这种间接性,可以附加多种用途。结构图应用场合1.远程代理,为一个对象在不同的地址空间提供局部代表。这样可以隐藏一个对象存在于不同地址空间的事实。2.虚拟代理,根据需要创建开销很大的对象。通过它来存在实例化需要很长时间的真实对象,让性能最...
2018-10-21 00:27:25 133
原创 设计模式学习4——装饰模式
定义装饰模式(Decorator),动态地给一个对象添加一些额外的职责,就添加功能来说,装饰模式比生成子类更加灵活。结构图分析装饰模式是利用Operation来对对象进行包装。这样每个装饰对象的实现和如何使用这个对象分离开了,每个装饰对象只关心自己的功能,不需要关心如何被添加到对象链当众。如果只有一个ConcreteComponet类而没有抽象的Component类,那么D...
2018-10-20 00:49:11 177
转载 设计模式学习3——代码设计遵循的原则
单一职责原则(SRP)单一职责原则就一个类而言,应该仅有一个引起它变化的原因。简单的理解为一个类的功能应该单一化,如果给一个类添加各种各样的功能,后期如果有其他的需求,那么我们要对整个类进行改动,这是非常糟糕的,维护麻烦,不能复用,也缺乏灵活性。总的来说,如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变...
2018-10-19 19:48:02 191
原创 设计模式学习2——策略模式
结构图定义策略模式是一种定义一系列算法的方法,从概念上来看,所有这些算法完成的都是相同的工作,只是实现不同,它可以以相同的方式调用所有的算法,减少了各种算法类与使用算法类之间的耦合。优点策略模式的Strategy类层次为Context定义了一系列的可供重用的算法或行为。继承有助于析取出这些算法的公共功能。同时简化了单元测试,因为每个算法都有自己的类,可以通过自己的接口单独测...
2018-10-19 15:54:54 267
转载 UML常见图标总结
类类包括类名、属性和方法三个部分,并被横线分割开来。类名:Employee属性:name, age, email方法:modifyInfo()其中的符号(+、-、#)的意义为:+:public-:private#:protected属性的完整表示为 可见性 名称:类型 [ = 缺省值] 中括号中的内容可选方法的完整表示为 可见性 名称(参数列表)[ ...
2018-10-19 15:36:32 2893
原创 设计模式学习1——简单工厂模式
定义简单工厂模式(Simple Factory Pattern):又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式,但不属于23种GOF设计模式之一,说它是一种编程习惯可能更恰当些。在简单工厂模式中,可以根据参数的不同返回不同类的实例。简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。分析将对象的创建和对象本身业...
2018-10-18 21:42:18 271
原创 三教杯项目问题2——实现物体一直面朝鼠标方向
描述在xz平面中,玩家控制的物体时刻面朝鼠标的方向。实现首先需要将玩家(物体)的世界坐标转化为屏幕坐标。Vector3 playerScreenPosition = Camera.main.WorldToScreenPoint(playerRigidbody.position);然后获取鼠标的屏幕坐标。Vector3 mousePosition = Input.mousePositi...
2018-10-09 15:36:14 306
原创 三教杯项目问题1——关于Awake、Start执行顺序的问题
缘由刚接触了一周Unity就匆匆忙忙参加了学校的一个一周限时游戏开发的比赛,结果由于对Unity的不熟悉导致出现了各种奇奇怪怪的问题。本来计划好的很多功能最终因为要解决冒出来的各种问题导致只实现了很小一部分。现在“作业”终于提交上去了,抽空来整理一下遇到的各种问题。我做的是一个射击类型的游戏。既然是射击类型的游戏那肯定避免不了要使用对象池。然而奇怪的是,在游戏开始之后虽然对象池内已经生成了预设...
2018-10-09 02:14:47 610
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人