Visual Studio项目中目录结构的最佳实践是什么?

时间:2009-01-11 02:47:04

标签: visual-studio

我有这个:

SolutionName:Foo.sln

大会: Foo.Bar

命名空间是:

Foo.Bar.Views
Foo.Bar.Model
Foo.Bar.BusinessObjects
Foo.Bar.Services

目录结构应该是这样吗?

__Foo/Foo.Bar/Foo.Bar.View__ or __Foo/Bar/View__

5 个答案:

答案 0 :(得分:1)

如果保留“自动命名空间”的Visual Studio选项,则需要具有Foo / Bar / Views。由于这是Visual Studio的默认行为,因此人们最常使用它。另外,它可以防止文件夹名称/路径过长。

答案 1 :(得分:1)

这完全是个人偏好。我会选择后者。

问自己一个问题,“我是否通过在子文件夹中重复Foo和Bar来添加任何有用的信息?”在我看来,这里的答案是否定的,仅仅因为信息是多余的。你也创造了一个维护问题;如果你需要重命名Bar,你现在必须重命名Foo.Bar,Foo.Bar.View,Foo.Bar.Model ......

答案 2 :(得分:0)

嗯,它可以是你想要的任何东西。两者都是有效的,但前者可能会有点多余,导致目录层次结构在眼睛上有点难度/禁止。

答案 3 :(得分:0)

Foo / Bar / View似乎很自然。此外,MSVS倾向于将解决方案文件夹映射到命名空间(即,如果将Abc文件夹添加到解决方案中,则添加到此文件夹的每个类都将位于root_namespace.Abc命名空间中)

答案 4 :(得分:0)

Foo / Bar / View似乎是更好的选择,如果将单个文件命名为单个类型(例如Foo.Bar.View.IView => Foo / Bar / View / IView.cs),则更多。

这是一个很好的模式,可以更轻松地查找类型,编写源代码,执行某些指标等。