【发布时间】:2011-04-14 14:41:56
【问题描述】:
我是一名 Java 开发人员,对 C# 完全陌生。我目前正在编写一个用于在我的组织中分发的 DLL。这是一个非常简单的库,包含几个类,我认为仅仅为了它而将它们全部放入某个命名空间中没有任何实际用途。我真的必须使用命名空间吗?如果是这样,为什么?这是某种最佳实践吗?
【问题讨论】:
-
当你在 Java 中做这样的事情时,你真的需要一个包吗?
-
不过,你会在 java 中使用包命名空间,对吧?
-
好的..所以这是导致我提出这个问题的真正问题。我尝试将所有类放入名为“A”的命名空间中。主类也被命名为“A”。这样,客户端应用程序就不得不将这个主类称为 A.A,这看起来很尴尬。这在 Java 中不会发生,因为在 Java 中,包名和类名之间有明显的区别。没有歧义的余地。C# 似乎不是这种情况。
-
不要把你的类和命名空间命名得那么含糊,那么……
-
我本来希望在程序集中的类之上没有命名空间(除非绝对需要),但不幸的是,VS 根据命名空间而不是它们所在的程序集来区分具有相同名称的类。阅读这也是namespaces-are-obsolete
标签: c# namespaces