文件夹结构,c#
本文关键字:结构 文件夹 | 更新日期: 2023-09-27 18:17:01
项目文件中的文件夹结构已经在这里讨论了几次,但我想进一步缩小这个问题的范围。例如,我的项目以以下方式组织,分别使用各自的名称空间
[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();
例如,如果它有少量的名称空间,我可以很容易地做到这一点。如果名称空间的数量很高,我想知道最好的方法是什么?这是包含这样的名称空间的最佳方式吗?
没有遵循前面所说的,我认为您最好不要在文件夹甚至项目之后命名名称空间,而是以这样一种方式命名,即包含逻辑上属于一起的类(从系统/功能的角度来看)。
例如,您可能有几个项目-每个项目实现一个特定的外部API。功能相似,为您的系统做同样的事情,只是风格不同。比如银行对账单下载。您的项目结构可能看起来像这样:
Project BankA
class BankADownloader
Project BankB
BankBDownloader
HelperA
ExtensionsB
Project BankC
...
对所有这样的项目使用相同的命名空间是有意义的,例如MySystem。StatementDownloaders
我用更广泛的例子给出了一个意见-多个项目。但这适用于一个项目的许多文件夹。以我的Bank-对报表下载程序为例,您可能希望将类和其他构件组织到文件夹中(按银行),但同样,在我看来,名称空间应该反映通用功能(或其他逻辑架构角度-如应用程序层),而不是文件夹组织。
我希望我没有误解你的问题。