当我构建一个类库时,我通常创建一个文件Enums.cs来保存程序集中使用的所有枚举.这是一个例子:
namespace MyNamespace
{
public enum Colors
{
Red,
Green,
Blue
}
public enum Shapes
{
Circle,
Square,
Triangle
}
}
Run Code Online (Sandbox Code Playgroud)
这使得我的所有枚举都易于查找,组织良好且易于访问代码.
我想知道为什么这不是一个好主意?
Ree*_*sey 15
我个人认为这不是一个好主意.我更喜欢将枚举保存在他们自己的文件中(每个定义的枚举一个文件),就像一个类.如果我正在寻找一个类型的名字,这对我来说更明显(对我而言).我将枚举视为类或结构,或任何其他命名空间范围的类型,对我来说,每个文件一个类型.
如果您的项目中定义了许多枚举,那么您的方法的主要缺点就会出现 - "一个文件"会变得非常大.
但是,编译的IL没有技术差异.这实际上更像是一种个人的组织策略.
好吧,您可以对所有委托类型,所有类,所有结构应用相同的推理.
通过根据事物对编译器的重要性对事物进行分组,您将失去以对您有意义的方式对事物进行分组的机会.编译器已经知道如何根据它们在语言中的含义来对待它们.
就个人而言,当我想找到与"Parser"相关的声明而不是"Configuration Dialog"时,我会前往保存该功能代码的地方.根据我使用的语言功能,我不必查看五个不同的地方.