随着我继续在 C# 中进一步增强我的刽子手游戏以帮助我学习语言并像程序员一样思考,我认为其中的一些方法应该放在单独的类中。现在,所有代码都在 Form 类(Windows Form)上。这使得调用所需的方法变得非常容易,因为我只需要使用方法名称并使用必要的参数。而且,由于它只是一个简单的刽子手游戏,这可能是最好的方法。我不知道。
具体来说,我已经读取了一个包含数千个单词的 .txt 文件的方法之一,将其拆分为一个数组,对数组进行洗牌,然后调用另一个方法来做其他事情。
当我阅读了一些关于 C# 的文献时,有人告诉我你想尽可能多地隐藏你的类。这样你就不能通过传递它无法处理的数据来破坏你的类。但这似乎意味着我必须向该类添加一个属性才能访问它,此外还必须创建该类的对象,才能使用我想要的方法。这似乎是一种拜占庭式的方式来访问该方法。
正如有经验的程序员所看到的,我还没有像程序员那样思考。我的重点是尽早养成正确的习惯,而不是以后再改掉坏习惯。
所以问题基本上是应该在这样的简单程序中将此方法设置为私有吗?最佳做法是什么?
有问题的代码如下(读取文件、表单数组、随机播放等的方法):
private void ReadFile(StringBuilder hintlength, string[] wordlist, string lettercountpath)
{
string fileContent = File.ReadAllText(lettercountpath); //Read file
string[] array = fileContent.Split((string[]null, StringSplitOptions.RemoveEmptyEntries); //Form array
Random rand = new Random();
for (int i = 0; i < array.Length; i++) // Shuffle algorithm
{
int randIndex = rand.Next(i, array.Lenth);
string temp = array[randIndex];
array[randIndex] = array[i];
array[i] = temp;
}
for (int i = 0; i < 10; i++0) //Assigns shuffled array into wordlist array
wordlist[] = array[i];
if (j > 9) //Checks counter to see how many times it's been clicked
j =0;
Start.Enabled = false;
NewWord.Enabled = false;
WordSelection(hint length, wordlist); // Calls WordSelection method
radioButton1.Enabled = false;
radioButton2.Enabled = false;
radiobutton3.Enabled = false;
if (remainderWords == 1) // Checks remaining words counter
remainderWords = 10;
}