我是C#的初学者(虽然我知道Java),并且遇到命名空间和类/接口命名相同的问题。命名类和名称空间是否相同?
什么都不行是这样的:
- Projekt
--> (Interface) Node
--> (Namespace/Folder) Node
-----> (Class): SomethingNode : Node
-----> ...
因为有该类型“Project.Node”与命名空间“Project.Node”被命名为相同的错误。
我将解释为什么我会故意喜欢将它们命名为相同的名称:我有很多实现接口“节点”的类。这些类应该都在一个名称空间中,为什么不把它们命名为我认为的“节点”。接口“节点”应该在项目的根名称空间中,因为它被其他类使用,我不想将接口“Node”移动到“Project.Node.Node”,因为我认为仅仅因为需要接口而导致“Project.Node”导入会很愚蠢。
所以我的问题是,我该如何解决这种情况?我应该如何命名我的类/名称空间,是否有一个很好的方法来完成这个任务,这种情况下是否有任何命名约定?
好的,谢谢。我有这样的另一种情况,但没有接口。我想要一个包含其他类的列表的Singleton名称“库”,让我们说预定义的方法(如代码库)。我会故意为我可以在“库”中添加的方法命名命名空间,尽管...在这种情况下,我可以做些什么,或者我只需要考虑名称空间的另一个名称? – MoonShade 2012-02-26 18:02:46
非常。虽然有'技巧'。复数。 System.Windows。表单包含一个表单类型。尽管我认为你最好描述命名空间的内容。LibraryComponents或类似的东西。 – 2012-02-26 18:20:04
你可以在这里找到官方的.NET界面命名指南:http://msdn.microsoft.com/en-us/library/8bc1fexb(v=vs.71).aspx – 2013-06-22 09:32:57