各位高手好!我是个刚入门的学徒!我想问一下:在c#中对于命名空间是不是可以随意命名?

解决方案 »

  1.   

    你写的源代码,就可以随意命名。当然啦,别故意命名成System.或者Microsoft.之类的,以免最终的类型全名称给人家的类型全名称恰好重复。
      

  2.   

    .NET FrameWork中自带的类库所在的命名空间是规定好的,必须正确引用。而对于自己编写的类库,命名空间是可以随意命名,但是也要符合基本要求,符合命名规则。
    如 :公司名.项目名例子:
    namespace Baidu.SearchEngine
    {     
          public class ExtendClass
         {
               //
         }
    }
      

  3.   

    个人感觉是,.NET框架提供的类和接口等根据功能的不同,被划分到不同的命名空间,也就是using(name space),是逻辑上的划分。如果没有声明一个name space,你的代码所定义的类型将位于一个未命名的全局明明空间中,对于所有的命名空间都是可见的,会发生什么问题,自己想一想呗。不同命名空间可以具有相同名字的类型,但是同一个命名空间的类型名字不可以相同(名字也叫做签名)。对于你自己的命名空间可以任意取名,但是因为是命名空间是逻辑上的划分,你取名的时候应该根据实现的内容取名吧,可以看看.NET命名空间的取名,它是树状的,每一层每一个命名空间都有相应实现的功能。一点点浅显的认识,希望能帮助到你~
      

  4.   

    本帖最后由 caozhy 于 2011-07-10 10:08:43 编辑
      

  5.   

    理论上是可以随便命名的,但是规范了好用,如com.公司名.部门.项目.模块等吧。
      

  6.   

    com.公司名这种应该是沿用了java包的命名习惯。
    .net的best practice不再用域名倒置这种方法了,一般就是 公司.项目.模块.XXX