【问题标题】:Creating namespaces by creating folders and nested the folders or Creating folders name with dots?通过创建文件夹和嵌套文件夹来创建命名空间或创建带点的文件夹名称?
【发布时间】:2015-01-02 21:57:09
【问题描述】:

这个问题可能听起来很奇怪,但它只是在我创建一个新项目时出现在我的脑海中。

在 Visual Studio 中,我可以创建如下的命名空间层次结构作为嵌套文件夹,或者我可以只创建带有点的单个文件夹,例如 CompanyName.Common 和 CompanyName.Common.Util

从长远来看,对于大型项目,哪一个更有意义?或者它会比另一个更好吗?

第二个问题是它的深度是否有任何限制,或者有 7-8 个嵌套命名空间是否会对性能产生任何影响?

【问题讨论】:

    标签: c# asp.net namespaces


    【解决方案1】:

    根据我的经验,我从事的每个工业项目都有一个清晰的嵌套文件夹层次结构。微软似乎还推荐了我快速查看的链接中的嵌套文件夹。

    例如:http://msdn.microsoft.com/en-us/library/bb668954.aspx

    【讨论】:

    • 感谢您提供有用的链接。
    【解决方案2】:

    您的命名空间名称和您的项目文件夹结构是两个不同的东西。

    它们看起来是相关的,因为 Visual Studio 会为您创建一个默认命名空间名称,每次您创建一个新文件夹并开始在其中创建类时,都会根据文件夹的名称和它嵌套在其中的其他文件夹。

    但是,您可以将这些命名空间重命名为您想要的任何名称。例如,您在“CompanyName.Common”中创建的第一个类将被赋予命名空间“TestPro.CompanyName.Common”,但如果需要,您可以将其重命名为“MyNewNameSpace”。

    从长远来看,对于大型项目,哪一个更有意义?或者它会比另一个更好吗?

    最后,您的文件夹结构只是对您最有意义的事情,并帮助您保持井井有条。如果您喜欢一次看到所有内容,将其展平,请使用带有点的文件夹。就个人而言,我更喜欢嵌套文件夹,但这完全取决于你。

    在深度方面是否有任何限制,或者拥有 7-8 个嵌套命名空间是否会对性能产生影响?

    就我个人而言,我没有理由嵌套超过 3 或 4 个文件夹。无论您选择哪种方式,您都更有可能在遇到 Visual Studio 性能问题之前点击windows limitation of 260 characters(除非您使用单个字母或不寻常的东西命名文件夹):

    在 Windows API 中(以下段落讨论的一些例外情况),路径的最大长度为 MAX_PATH,定义为 260 个字符。

    确实,这并不难(我的文件夹名称在这里很可笑,但我是在说明一点;))

    【讨论】:

    • 是的,我知道您可以根据自己的喜好重命名命名空间,但这样做没有意义。未来的事情会变得复杂。我也使用 resharper,如果类的命名空间与文件夹结构不同,它会抱怨。不过谢谢你的建议。
    • 我刚刚更新了与命名空间级别相关的问题。你介意回答这个问题吗?谢谢
    • 如果你发现了什么,请现在告诉我。非常感谢。
    • 事实证明,Windows 对文件路径的限制是 260 个字符,所以我认为您更有可能首先点击它。我没有找到任何关于 VS 允许的最大嵌套文件夹数的记录,或者这可能会对 IDE 的性能产生什么负面影响。
    猜你喜欢
    • 2015-02-21
    • 1970-01-01
    • 2015-12-27
    • 2021-07-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多