Подтвердить что ты не робот

Разница между пространством имен корней и именем сборки

Какая разница между двумя?

4b9b3361

Ответ 1

Предполагая, что вы говорите об .NET(с учетом Visual Studio), тогда пространство имен корней - это то, что каждый класс, который вы создаете в проекте визуальной студии, станет частью. Он также является базой для любых пространств имен, которые автоматически назначаются при создании класса внутри папки проекта.

Итак, с базовым пространством имен ACMECorp.Bombs все ваши классы станут частью пространства имен ACMECorp.Bombs, поэтому класс GravityBomb будет иметь полное имя ACMECorp.Bombs.GravityBomb. Класс под названием FlyingBomb, созданный в папке проекта под названием GuidedBombs, будет иметь полное имя типа ACMECorp.Bombs.GuidedBombs.FlyingBomb.

Имя сборки - это просто имя скомпилированного файла, в котором ваш код будет скомпилирован как исполняемый файл или библиотека и т.д.

Вопрос, который я часто вижу на этом, - , если ваше имя сборки будет таким же, как корневое пространство имен, а также быть таким же, как название вашего проекта (снова в visual studio). Раньше я считал, что у вас должно быть имя проекта так же, как имя сборки, такое же, как и в корневом пространстве имен, как и по умолчанию с визуальной студией. Однако, если вам нужно выполнить некоторые основные рефакторинг и переименование, это может стать болью в заднице, особенно если вы используете исходный контроль (так как вы должны начать переименование папок проекта).

Мое предложение будет состоять в том, что ваше имя проекта просто описательное имя содержимого проекта. Имя вашей сборки должно состоять из области технологии и описания компонента, а также названия компании и области технологий (в зависимости от вашего предпочтения), а ваше корневое пространство имен должно соответствовать стандарту именования Microsoft, поэтому:

Проект: доступ к биометрическому устройству

Сборка: BiometricFramework.DeviceAccess.dll

Пространство имен: ACME.BiometricFramework.DeviceAccess

Некоторые справочные материалы для вас:

http://blogs.msdn.com/brada/archive/2003/04/19/49992.aspx

http://msdn.microsoft.com/en-us/library/ms229026.aspx

http://msdn.microsoft.com/en-us/library/ms229048.aspx

Ответ 2

В .NET Framework пространство имен System разделяется на несколько сборок, в частности mscorlib.dll и System.dll