Каковы преимущества сохранения "чистого" списка использования директив в С#?

Я знаю, что VS2008 имеет функцию удаления и сортировки для очистки с помощью директив, равно как и Resharper. Помимо того, что ваш код "чист" и устраняет проблему ссылок на пространства имен, которые могут отсутствовать в будущем, каковы преимущества поддержания "чистого" списка использования директив?

Меньше кода? Более быстрое время компиляции?

Ответы

Ответ 1

Для меня это в основном все о меньшем шуме (плюс делает Resharper счастливым!).

Я считаю, что любое улучшение времени компиляции было бы минимальным.

Ответ 2

Если у вас всегда есть только те директивы, которые вам нужны, и всегда их сортировать соответствующим образом, тогда, когда вы приходите к разным двум версиям кода, вы никогда не увидите ненужных изменений.

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

Ответ 3

Там нет воздействия во время выполнения. Это чисто компилирует время. Это может повлиять на следующее:

  • Меньше шансов на столкновение в пространстве имен
  • Меньше "шума" в файле кода
  • Очень ясно, какие пространства имен и возможные типы ожидать в файле
  • Использование меню для удаления неиспользуемых и Сортировка означает более согласованность с использованием операторов среди разработчиков. Меньше шансов на немые проверки, чтобы исправить это.

Ответ 4

  • Меньше шума.
  • Ясное ожидание того, какие типы используются ( "Мой уровень пользовательского интерфейса зависит от System.Net. Вау, почему?" )
  • Ссылки на чистые: если у вас минимальный набор операторов, вы можете очистить свои ссылки. Часто я вижу, что разработчики просто бросают ссылки в свои проекты, но они никогда не удаляют их, когда они больше не нужны. Если у вас нет чего-то, что действительно нуждается в ссылке (и подсчетах использования), становится тривиально очищать ваши ссылки. (Зачем вы хотите это сделать? В больших системах, которые были разложены на компоненты, они оптимизируют ваши зависимости сборки, устраняя неиспользуемые депо.)

Ответ 5

Для меня чистый список использования инструкций в начале может дать хорошее понимание ожидаемых типов.

Ответ 6

Я видел приличную прибыль во время компиляции несколько лет назад, когда я впервые установил ReSharper (на 18 проектных решениях). С тех пор его просто нужно было держать в чистоте.

Ответ 7

Я не могу говорить о преимуществах во время компиляции и производительности, но есть меньше шансов на конфликты пространства имен, если вы минимизируете свои объявления использования. Это особенно важно, если вы используете более одной сторонней библиотеки.

Ответ 8

Существует одна разница во времени компиляции: когда вы удаляете ссылку, но по-прежнему имеете директиву using в своем коде, вы получаете ошибку компилятора. Поэтому наличие чистого списка использования директив упрощает удаление неиспользуемых ссылок.

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