Kit*_*inz -1 c# methods getter properties
在过去的几天里,我一直在阅读C#中的属性和方法之间的差异,以及何时使用它们.我读到的大多数文章/问题都说吸气剂应该是"轻巧的",并且内部永远不会有大量的逻辑或复杂的操作.
现在我有一个get我认为在属性和方法之间的界限,所以我想看看你们都在想什么,如果我应该改变方法或留在吸气剂.
还欢迎任何其他建议:D
public decimal[] getPreprocData
{
get
{
int i = 3;
decimal[] data = new decimal[9];
data[0] = (start.Value.Hour * 3600) + (start.Value.Minute * 60);
data[1] = duration.Value;
data[2] = flowRate.Value;
foreach (NumericUpDown nud in gbHTF.Controls.OfType<NumericUpDown>().OrderBy(nud => nud.TabIndex))
{
data[i] = nud.Value;
i++;
}
return data;
}
}
Run Code Online (Sandbox Code Playgroud)
Properties&Field通常是Noun和
methods与functions一般Verb.
所以,getPreprocData应该是一个method.因为它对对象(类)的实例进行了动作.
从我自己的角度来看,因为你的财产是从来没有利用的setter,它始终是更好地使用method比property.
当没有任何东西可以设置时,有一个属性是什么意思.
您可以将属性实现为以下方法:
public decimal[] GetPreprocData()
{
int i = 3;
decimal[] data = new decimal[9];
data[0] = (start.Value.Hour * 3600) + (start.Value.Minute * 60);
data[1] = duration.Value;
data[2] = flowRate.Value;
foreach (NumericUpDown nud in gbHTF.Controls.OfType<NumericUpDown>().OrderBy(nud => nud.TabIndex))
{
data[i] = nud.Value;
i++;
}
return preprocData;
}
Run Code Online (Sandbox Code Playgroud)