Поиск неиспользуемых операторов "Импорт" в исходном коде VB.NET

Идентификатор Visual Studio позволяет сканировать неиспользуемые ссылки в исходном коде VB.NET. Но у меня также есть много неиспользуемых Импорт утверждений в моем приложении.

Два вопроса:

  • Есть ли способ найти неиспользуемые операторы Imports во всем исходном коде VB.NET?
  • Неужели неиспользуемые операторы Imports ухудшают производительность моего приложения?

Ответы

Ответ 1

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

Три причины, по которым вы могли бы сохранить низкий уровень импорта, следующие:

  • Для ясности. Импорт - полезный способ узнать на первый взгляд, какие операции выполняет класс: не тратьте эту возможность! (например, если я вижу пространство имен Regex, импортированное поверх файла, я обычно предполагаю, что в нем есть какое-то регулярное выражение)

  • Чем больше у вас импортных, тем вероятнее, что вы столкнулись с конфликтом имени (т.е. имея одно имя типа, ссылающееся на два разных типа в двух разных импортированных пространствах имен)

  • Поскольку эти директивы используются во время компиляции, наличие большого количества неиспользуемого импорта может повредить время сборки и/или производительность intelliSense. (Просто размышляя здесь, я не знаю, как IntelliSense работает за кулисами)

Если вы хотите избавиться от этих бесполезных пространств имен, я не думаю, что там есть встроенная поддержка для Visual Studio (я предполагаю, что это то, что вы подразумеваете под "VB.net IDE" ), но вы могут использовать некоторые сторонние инструменты (например, Resharper) или некоторые другие IDE (например, Eclipse.net)

Ответ 2

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

Другими словами, никакого снижения производительности.

Ответ 3

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

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