1

项目文件中的文件夹结构已在此处讨论过多次,但我想进一步缩小问题范围。例如,我的项目按以下方式组织,具有各自的命名空间

[Project 1]  

[A(Folder)]    
   Class A             ConceptCheck.ClassA
   [B(Folder)] 
     Class B           ConceptCheck.ClassA.ClassB
[C(Folder)]
   Class C             ConceptCheck.ClassC

因此,当我创建如下对象时,我需要包含所有命名空间

using ConceptCheck.ClassA;
using ConceptCheck.ClassB;
using ConceptCheck.ClassA.ClassC;

            A a = new A();
            B b = new B();
            C c = new C();

例如,如果它的命名空间数量很少,我可以很容易地做到这一点。我想知道最好的方法是什么,如果命名空间的数量很多?这是包含这样的名称空间的最佳方式吗?

4

1 回答 1

1

如果没有遵循之前在这里所说的内容,我认为您最好不要在文件夹甚至项目之后命名名称空间,而是以这样一种方式,包含逻辑上属于一起的类(从系统/功能的角度来看)。

例如,您可能有多个项目——每个项目都实现了特定的外部 API。功能相似,为您的系统做同样的事情,只是风格不同。说银行对账单下载。您的项目结构可能如下所示:

Project BankA 
   class BankADownloader
Project BankB 
   BankBDownloader
   HelperA
   ExtensionsB
Project BankC
   ...

对所有此类项目使用相同的命名空间是有意义的,例如 MySystem.StatementDownloaders

我正在使用更广泛的示例 - 多个项目来发表意见。但这适用于具有许多文件夹的一个项目。要使用我的 Bank-Statement-Downloader 示例,您可能希望将类和其他工件组织到文件夹中(按 Bank),但同样,命名空间 IMO 应该反映通用功能(或其他逻辑架构视角 - 如应用层),而不是文件夹组织。

我希望我没有误解你的问题。

于 2013-06-05T04:43:25.893 回答