Mri*_*Raj 8 class-library namespaces
类库和命名空间之间的实际区别是什么?我知道它们都用于将类,命名空间等组合在一起.任何人都可以告诉我应该在哪种情况下使用类库以及何时创建新的命名空间.
afl*_*fly 10
命名空间为类提供了一个名义上的分离,类库提供了物理分离(在windows中认为是一个独立的dll).
当您想要包装可与其他项目共享的功能时,类库非常有用.
想象一下,创建一个Windows应用程序,将UI和实现类(类库)分成两个不同的项目.然后你发现你需要有一个相同的web版本.您只需从Windows应用程序导入您创建的类库,就可以使用所有实现,只关注Web UI.
如果您使用命名空间在一个项目中创建了整个Windows应用程序来分隔它们,那么这样做会非常棘手和混乱.(曾尝试导入exe吗?)
值得指出的是,类库本身可能会使用命名空间来为其中的类提供进一步的概念分离
命名空间的目的是避免名称冲突。当您有数百个类时,应使用命名空间。其他指示符 - 当您的代码被其他人使用并且您的名称可能与用户代码中的名称冲突时。
其他重要的区别是类始终是一种数据类型。您可以使用此类型定义变量。命名空间不是一种类型。您不能使用命名空间定义变量。