Должен ли я использовать System.Guid.NewGuid () или использовать System, а затем Guid.NewGuid ()? - PullRequest
0 голосов
/ 19 августа 2011

Когда мне следует использовать полное имя, Sytem.Guid.NewGuid();?Должен ли я всегда использовать using System;, а затем Guid.NewGuid(); для всех случаев?

Ответы [ 6 ]

1 голос
/ 19 августа 2011

Я бы сказал, что последовательность важнее, чем какую альтернативу вы выберете.Лично я склонен всегда указывать директивы using и сортировать их по алфавиту, поэтому сразу видно, что есть или нет.Тогда в моем коде я всегда использую неквалифицированные имена, за исключением случаев, когда мне нужно различать классы с одинаковыми именами.

1 голос
/ 19 августа 2011

Я думаю, что будет более разумно использовать полностью определенное имя, т.е. Sytem.Guid.NewGuid(), если у вас есть дубликаты имен на некотором уровне иерархии классов / пространств имен, которого вы хотите избежать, явно указав полное имя.

Поскольку System в значительной степени уникальное пространство имен, вы должны перейти на Guid.NewGuid()

1 голос
/ 19 августа 2011

вы должны использовать позже, то есть сначала включить пространство имен. Преимущество в том, что, просматривая только операторы using, вы будете хорошо знать, какие библиотеки используются в этом файле.

1 голос
/ 19 августа 2011

Мне лично не нравятся эти длинные идентификаторы. Код очень трудно прочитать, если у вас их много.
Однако, когда между именами типов есть неоднозначности, полная версия исправляет это. Лично я использую их только тогда, когда это необходимо, из-за конфликтов в пространстве имен. И также в этом случае мне больше нравится объявлять псевдоним пространства имен . Это делает код намного более читабельным.

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

С чем я также столкнулся, что они были непрактичны для какого-то мануального рефакторинга, но, возможно, может быть и обратное, я не помню точный случай ...

0 голосов
/ 19 августа 2011

Пространства имен - это функция C #, предназначенная только для компиляции, которая позволяет экономить время во время разработки. Директивы using используются компилятором для поиска сокращенных имен типов в вашем коде.

Обычно каждый раз, когда компилятор встречает имя типа в вашем коде, которое он не знает, оно берет каждую директиву using и добавляет его к имени типа и проверяет, разрешается ли это полное имя.

Как только ваше приложение скомпилировано, пространства имен и директивы using исчезли, поскольку IL не нуждается в них.

Чтобы ответить на ваш вопрос, это действительно не имеет значения .. если вы часто используете его в одном файле, то импортируйте его, в противном случае используйте полностью определенное пространство имен

0 голосов
/ 19 августа 2011

Думаю, на самом деле ничего не изменится. «Использование» более полезно при кодировании, но при компиляции в IL все классы компилируются с полным именем.

...