我正在开发一个简单的项目,我创建了几个类,接口,一个静态类等等。我要问的是,如何将这些文件组织到命名空间中。有什么好的做法,或者我应该遵循我的计划的逻辑。我目前认为我应该将接口移动到一个名称空间中,将所有类移动到另一个名称空间中。那么你有什么建议我的。我真的很想知道分离文件的最佳方法。
度过愉快的一天:)
答案 0 :(得分:3)
您应该将命名空间中的代码与具有最高cohesion的其他类型进行分组。也就是说,当组执行常见功能时,组合在一起。你所暗示的凝聚力的类型是逻辑上的凝聚力,而且实际上是一种相当弱的凝聚力。
答案 1 :(得分:2)
命名空间主要用于大型项目的利益。由于您正在处理“简单项目”,因此我建议您为整个应用程序使用单个命名空间。因为C#中的所有内容都必须是类型或类型的成员(即,没有全局变量或方法),所以您创建的类型(对象,类,接口,枚举等)通常是足够好的组织小项目的功能。
对于稍微大一点的项目,我建议将每个层放入自己的命名空间。
对于更大的项目,根据偏好,名称空间应该是相关类型或子系统的逻辑分组。
答案 2 :(得分:1)
在特定的命名空间中,你应该把所有涉及的事情都放在一边。例如,有关字符串操作的所有内容都应放入单独的命名空间中,例如: com.server.string。
这一点非常重要,尤其是如果您的类名存在于其他名称空间中。
答案 3 :(得分:1)
将代码拆分为文件的唯一原因是使代码可维护。
作为一般的经验法则,我倾向于为枚举,结构,模型,控制器等创建文件夹。根据解决方案的大小,您可以在此之后继续嵌套。
有时将整个命名空间放在文件中是有意义的,有时候,让嵌套处理命名。
一个好的规则是你应该能够快速找到你想要的东西,更重要的是,没有看过这个项目的人应该快速找到他的方法。
要记住的一件事是,你永远不会在一个文件中放置一件事。永远不要在同一个文件中放两个类,永远不要在类文件的末尾添加枚举等等。
答案 4 :(得分:1)
您将文件与类混淆。您可以在Visual Studio中创建文件夹以组织文件。这样你就可以对接口和类进行分组(这就是我通常所做的)。 VS将自动将文件所在的新类放在同名的命名空间中。这通常不是你想要的(我不知道如何关闭它,所以我无法帮助你)。
我同意这里的其他答案,你应该根据他们的工作分类,而不是根据他们的语言结构。