我了解文件齐全的代码的重要性。但是我也了解自我记录代码的重要性。直观地读取特定功能越容易,我们在软件维护期间就可以进行得越快。
话虽如此,我喜欢将大型功能分离为其他较小的功能。但是我这样做的程度是,一个班级最多可以有五个班级,以服务于一种公共方法。现在将五个私有方法乘以五个公共方法,您会得到大约二十五个隐藏方法,这些隐藏方法可能只会被那些公共方法调用一次。
当然,现在可以更轻松地阅读这些公共方法,但是我不禁认为,拥有太多函数是不明智的做法。
[编辑]
人们一直在问我为什么认为过多的功能是不好的做法。
简单的答案:这是一种直觉。
我的信念一点都没有任何小时的软件工程经验作为后盾。只是不确定性给了我一个“作家的障碍”,但对于程序员而言。
过去,我只编写个人项目。就在最近,我开始进行基于团队的项目。现在,我想确保其他人可以阅读和理解我的代码。
我不确定会提高可读性。一方面,我正在考虑将一个较大的功能分成名称可理解的其他较小的功能。但是我还有另一面说这是多余的。
因此,我要对此进行启发以选择正确的路径。
[编辑]
下面,我包括我怎么两个版本可以解决我的问题。第一个解决方案是不分离大块代码。第二个做不同的东西。
第一版:
public static int Main()
{
// Displays the menu.
Console.WriteLine("Pick your option");
Console.Writeline("[1] Input and display a polynomial");
Console.WriteLine("[2] Add two polynomials");
Console.WriteLine("[3] Subtract two polynomials");
Console.WriteLine("[4] Differentiate two polynomials");
Console.WriteLine("[0] Quit");
}
第二版:
public static int Main()
{
DisplayMenu();
}
private static void DisplayMenu()
{
Console.WriteLine("Pick your option");
Console.Writeline("[1] Input and display a polynomial");
Console.WriteLine("[2] Add two polynomials");
Console.WriteLine("[3] Subtract two polynomials");
Console.WriteLine("[4] Differentiate two polynomials");
Console.WriteLine("[0] Quit");
}
在上面的示例中,后者调用了一个函数,该函数将在程序的整个运行时仅使用一次。
注意:上面的代码是通用的,但与我的问题具有相同的性质。
现在,这是我的问题:哪个?我选择第一个还是第二个?