Visual Studio 2008 / C #: как найти мертвый код в проекте? - PullRequest
17 голосов
/ 07 января 2010

Как найти мертвый код в проекте Visual Studio 2008 C #? Как неиспользуемые классы, неиспользуемые переменные или неиспользуемые ресурсы?

Ответы [ 5 ]

19 голосов
/ 07 января 2010

Вы можете попробовать FxCop , который интегрирован в Visual Studio 2008 под названием Code Analysis. Вам просто нужно щелкнуть правой кнопкой мыши файл проекта и «Выполнить анализ кода».

FxCop - это приложение, которое анализирует сборки управляемого кода (код, предназначенный для общеязыковой среды выполнения .NET Framework) и сообщает информацию о сборках, такую ​​как возможные улучшения дизайна, локализации, производительности и безопасности.

Активные правила можно настроить в разделе «Анализ кода» свойств проекта. Например, некоторые правила, относящиеся к данному случаю, присутствуют в Правилах использования и Правилах исполнения:

  • CA1801: просмотр неиспользуемых параметров.
  • CA1811: избегать невостребованного личного кода.

А для большей гибкости вы также пишете свои собственные правила ( Учебник по написанию собственного правила анализа кода ).

2 голосов
/ 07 января 2010

Очень полезным инструментом для этого является инструмент анализа зависимостей NDepend . Вы можете загрузить в него свой проект Visual Studio, и он проанализирует зависимости всех ваших сборок, типов и методов. Он дает вам обширную информацию о зависимостях, включая (но ни в коем случае не ограничиваясь!) Методы / типы, которые вообще ничем не используются.

Вы можете просматривать зависимости либо графически, либо в виде списка, а также писать свои собственные пользовательские запросы на зависимости, такие как этот - простой запрос CQL показывает потенциально неиспользуемые методы:

SELECT 
  METHODS         // Get me a list of methods
WHERE 
  MethodCa == 0   // Where their afferent coupling is zero, (afferent coupling being the number of other methods that call it)

Настоятельно рекомендуемый инструмент.

2 голосов
/ 07 января 2010

Установка JetBrains ReSharper , который выделит для вас неиспользуемый код.

1 голос
/ 07 января 2010

Shift + F12 в VS полезен для быстрой проверки:)

0 голосов
/ 07 января 2010

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

Если щелкнуть правой кнопкой мыши метод или класс, а затем выбрать «Найти использование», вы получите выходные данные всех мест, на которые он ссылается. Очевидно, это будет пустым, если он не используется.

Для постоянной очистки я бы установил ReSharper

...