Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 最佳实践统一,创建不同的脚本或使用切换案例?_C#_Performance_Unity3d_Game Engine_Unityscript - Fatal编程技术网

C# 最佳实践统一,创建不同的脚本或使用切换案例?

C# 最佳实践统一,创建不同的脚本或使用切换案例?,c#,performance,unity3d,game-engine,unityscript,C#,Performance,Unity3d,Game Engine,Unityscript,我正在开发一个关于团结的游戏。 有不同功能但属性相同的单元 我该怎么办 为每种类型创建不同的脚本,或使用相应的开关盒和函数创建单个脚本 最佳做法是什么 提前感谢:) 例如:我有一个愤怒的家伙和一个冷静的家伙,我有一个基本的person类继承,但是继承到了同一个类,比如unit,但是我有不同的切换案例来确定愤怒、快乐、平静等等。我应该为每个人创建不同的类吗?这是正确的方法吗 使用继承怎么样 使用继承怎么样 unity使用基于组件的方法,我坚持使用它。只要你的组件足够通用,即时的好处就是可重用性(o

我正在开发一个关于团结的游戏。 有不同功能但属性相同的单元

我该怎么办

为每种类型创建不同的脚本,或使用相应的开关盒和函数创建单个脚本

最佳做法是什么

提前感谢:)


例如:我有一个愤怒的家伙和一个冷静的家伙,我有一个基本的person类继承,但是继承到了同一个类,比如unit,但是我有不同的切换案例来确定愤怒、快乐、平静等等。我应该为每个人创建不同的类吗?这是正确的方法吗

使用继承怎么样


使用继承怎么样


unity使用基于组件的方法,我坚持使用它。只要你的组件足够通用,即时的好处就是可重用性(ofc有些不会,但很多可以。为了可读性和项目的易用性,不要做得太过分。^^是的,我使用了组件方法:)例如:我有一个愤怒的家伙和一个冷静的家伙,我有一个person类的基本继承,但是继承到同一个类,比如单位,但我有不同的切换情况来确定愤怒、快乐、平静等。我应该为每个单位设置不同的类吗?我想知道你的单位是否处于愤怒、平静和其他情绪状态,实际上,它只不过是一个变量。unity使用基于组件的方法,我坚持使用它。只要你的组件足够通用,即时的好处就是可重用性(ofc有些不会,但很多可以。为了可读性和项目的易用性,不要做得太过分。^^是的,我使用了组件方法:)例如:我有一个愤怒的家伙和一个冷静的家伙,我有一个person类的基本继承,但是继承到同一个类,比如单位,但我有不同的切换情况来确定愤怒、快乐、平静等。我应该为每个单位设置不同的类吗?我想知道,愤怒、平静以及你的单位可能处于的其他情绪状态,实际上并不仅仅是一个变量。是的,我也会使用继承。在Unity中唯一需要记住的是,当从MonoBehavior的子级继承时,必须手动调用base.Start()、base.Update()和所有MonoBehavior事件。还有,@AnamtaKhan谷歌界面,它迟早会派上用场的!是的,我也在我的选项中包含了继承权。我应该对所有类型的单元使用继承和单独的脚本吗?我的一位高年级学生让我编写一个脚本并处理交换机案例,但我不确定这样做是否正确:组件、组件、组件。在一些类和结构之间,用于保存数据或传递数据。至少这是你的预期用途——但是,你可以做任何让你的船摇晃的事情。但它的意思是,你不需要一个单元作为类和一系列派生类,而只需要作为互连组件(及其数据)的概念。至少我是这样理解的;)是的,我们做的每件事都是组件。例如:我有一个愤怒的家伙和一个冷静的家伙,我有一个person类的基本继承,但是继承到了同一个类,比如unit,但是我有不同的切换案例来确定愤怒,快乐,冷静等等。我应该为每一个类创建不同的类吗?这是正确的方法吗?@AnamtaKhan你能和我们分享一下你的代码吗?这样就更容易给出反馈和可能的解决方案……是的,我也会使用继承。在Unity中唯一需要记住的是,当从MonoBehavior的子级继承时,必须手动调用base.Start()、base.Update()和所有MonoBehavior事件。还有,@AnamtaKhan谷歌界面,它迟早会派上用场的!是的,我也在我的选项中包含了继承权。我应该对所有类型的单元使用继承和单独的脚本吗?我的一位高年级学生让我编写一个脚本并处理交换机案例,但我不确定这样做是否正确:组件、组件、组件。在一些类和结构之间,用于保存数据或传递数据。至少这是你的预期用途——但是,你可以做任何让你的船摇晃的事情。但它的意思是,你不需要一个单元作为类和一系列派生类,而只需要作为互连组件(及其数据)的概念。至少我是这样理解的;)是的,我们做的每件事都是组件。例如:我有一个愤怒的家伙和一个冷静的家伙,我有一个person类的基本继承,但是继承到了同一个类,比如unit,但是我有不同的切换案例来确定愤怒,快乐,冷静等等。我应该为每一个类创建不同的类吗?这是正确的方法吗?@AnamtaKhan你能和我们分享一下你的代码吗?这样就更容易给出反馈和可能的解决方案。。。。
public abstract class BaseUnit{

   public void virtual DoSomething(){
         // some default code
   }     
}

public class MyUnitType : BaseUnit{
  public override void DoSomething(){
     // my custom code if I do no want the default logic
  }
}