2008-11-24 110 views

回答

33

假设您正在讨论.NET(与Visual Studio相关),那么根名称空间就是您在Visual Studio项目中创建的每个类将成为的一部分。它也是在项目文件夹内创建类时自动分配的任何子名称空间的基础。

因此,对于ACMECorp.Bombs的基本命名空间,所有类都将成为ACMECorp.Bombs命名空间的一部分,因此类GravityBomb将具有ACMECorp.Bombs.GravityBomb的全名。在名为GuidedBombs的项目文件夹中创建的名为FlyingBomb的类将具有ACMECorp.Bombs.GuidedBombs.FlyingBomb的完整类型名称。

大会名称很简单,你的代码将被编译为任何可执行文件或库等编译的文件的名称...

,我经常看到这样的一个问题是如果你的程序集名称与根名称空间相同,也与您的项目名称(再次在Visual Studio中)相同。我过去一直认为你应该有一个项目名称,就像程序名称一样,和根名字空间一样,就像Visual Studio的默认一样。但是,如果你需要做一些重大的重构和重命名,这可能会成为一个麻烦,特别是如果你使用源代码控制(因为你应该开始重命名项目文件夹)。

我的建议会是你的项目名称只是项目内容的描述性名称。你的程序集名称应包括技术领域和组件的描述,或公司名称和技术领域的(取决于你的偏好研究),以及你的根命名空间应该由微软命名标准,以便进行描述:

项目:生物识别设备访问

大会:BiometricFramework.DeviceAccess.dll

命名空间:ACME.BiometricFramework.DeviceAccess

给你一些参考材料:

http://blogs.msdn.com/brada/archive/2003/04/19/49992.aspx

http://msdn.microsoft.com/en-us/library/ms229026.aspx

http://msdn.microsoft.com/en-us/library/ms229048.aspx

-1

在.NET Framework,系统命名空间被分割在多个组件,尤其是mscorlib.dll中&系统.dll

相关问题