代码之家  ›  专栏  ›  技术社区  ›  Aadith Ramia

关于c的基本问题-是否需要命名空间?

  •  23
  • Aadith Ramia  · 技术社区  · 15 年前

    我是一个Java开发人员,对C#完全陌生我正在编写一个dll,以便在整个组织中分发。它是一个包含两个类的非常简单的库,我看不出仅仅为了它而将所有类放入某个名称空间中有任何实际用途。我真的需要使用名称空间吗如果是,为什么?这是一种最佳实践吗?

    6 回复  |  直到 15 年前
        1
  •  17
  •   Dave D    15 年前

    你…吗 需要 一个不。 应该 你有吗?对。它将有助于防止与其他名称空间中同名类的冲突,而不必使用 global:: 是的。

        2
  •  12
  •   Jon Skeet    15 年前

    对于一次性测试应用程序(例如检查堆栈溢出答案),我不使用名称空间为了 任何东西 否则,我会的。这只是一个组织的事情-如果你要重用代码,将它与你也在同一个上下文中重用的其他代码分开是有帮助的我的意思是,如果你正在使用LibraryX和LibraryY创建一个应用程序,在应用程序中区分它们是很有用的例如,它们可能都使用相同的类名——如果不使用名称空间,这将使代码难看。

    除此之外,如果您使用visual studio进行编码,实际上需要更多的工作 若要包含命名空间,必须修改项目以使其具有空的默认命名空间。

        3
  •  0
  •   Ian Ringrose    15 年前

    不需要名称空间。但是developer studio希望您使用名称空间例如,当您选择将类添加到项目开发人员工作室时,将:

    • 为类创建文件
    • 将文件添加到项目中
    • 在项目的默认名称空间中创建一个空类(在上面的文件中)。

    项目默认命名空间是developer studio概念,而不是c概念,并在项目的属性中设置。

    在创建供其他人使用的dll时,如果您有一个名称空间,则dll的用户将更容易使用:

    • 人们希望你有一个名称空间(如果你没有,可能会感到困惑)
    • 如果您的用户链接到的任何dll中的类(或枚举等)与另一个类的名称相同,那么名称空间将使您的用户更容易使用。

    因此,我看不出不使用名称空间的好理由。

        4
  •  0
  •   jebberwocky    15 年前

    我投赞成票,我认为使用名称空间是个好习惯你不能确定人们不会使用相同的类名。

        5
  •  0
  •   Josh Smeaton    15 年前

    要对有关将类命名为与其命名空间相同的类的评论作出响应,请阅读下面的一篇文章。

    简而言之:不要那样做。

    http://blogs.msdn.com/b/ericlippert/archive/2010/03/09/do-not-name-a-class-the-same-as-its-namespace-part-one.aspx

        6
  •  0
  •   parijat mishra    10 年前

    基本上,系统是asp.net C中的根命名空间。 在.NET中,每个程序都是用默认的名称空间创建的。此默认命名空间称为全局名称空间但程序本身会创建任意数量的名称空间,每个名称都是唯一的。

    了解更多 http://asp-net-by-parijat.blogspot.in/2015/08/what-is-namespace-in-c-need-of.html

    推荐文章