Безопасно ли удалять определение пространства имен из нового класса в visual studio? - PullRequest
0 голосов
/ 22 июля 2009

Когда вы создаете новый класс в Visual Studio, он включает определение пространства имен, которое извлекается из пространства имен по умолчанию, заданного в свойствах проекта. Однако, если вы удалите определение пространства имен, оно все равно получит пространство имен по умолчанию. Безопасно ли удалять и есть ли какая-то польза от того, чтобы оставить его там?

Ответы [ 4 ]

3 голосов
/ 22 июля 2009

В контексте VB это безопасно, но хорошее эмпирическое правило заключается в том, что «явное лучше, чем неявное». Лично я всегда находил неявное пространство имен VB и импорт хорошим примером ошибок, которые больше затрудняют читабельность кода, чем помогают краткости. Но, конечно, это очень субъективно.

1 голос
/ 22 июля 2009

В c # класс не использует автоматически пространство имен по умолчанию, а вместо этого будет находиться в глобальном пространстве имен, которое обычно не рекомендуется.

В VB.NET класс будет автоматически использовать пространство имен по умолчанию, а не глобальное пространство имен, и это безопасно, однако это не лучший метод. Как упоминает Павел Минаев ниже ...

В контексте VB это безопасно, но хорошее практическое правило заключается в том, что «явное лучше, чем неявное». Лично я всегда находил неявное пространство имен VB и импорт хорошим примером ошибок, которые больше затрудняют читабельность кода, чем помогают краткости. Но, конечно, это очень субъективно.

1 голос
/ 22 июля 2009

Теоретически это возможно и законно, но ... это просто нехорошо :) (в 99% случаев). Когда вы пишете свой код, приятно «упаковать» его в некоторое пространство имен.
Кроме того, у вас не будет проблем с конфликтами имен (например, 2 класса с одинаковыми именами - легальные и управляемые, если они будут у вас в отдельных пространствах имен.
В основном:
1. Наличие вещей в глобальном пространстве имен нехорошо (это не то же самое, что пространство имен по умолчанию)
2. Пространства имен позволяют упростить управление вашим кодом (и это преимущество, если оставить даже пространство имен по умолчанию вместо его удаления)
3. Пространства имен помогают разрешать конфликты имен и т. Д.

0 голосов
/ 22 июля 2009

Как правило, он не выбирает пространство имен по умолчанию. В общем, он помещает его в глобальное пространство имен, что не одно и то же.

Если вы хотите, чтобы класс находился в пространстве имен, оставьте namespace на месте.

...