Определите неиспользуемые методы и свойства

StackOverflow https://stackoverflow.com/questions/2045045

  •  20-09-2019
  •  | 
  •  

Вопрос

У меня есть автономное решение (ни одна из библиотек DLL не используется ни в одном другом проекте, поэтому не беспокойтесь о том, что методы будут использоваться где-то еще).

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

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

Раньше я использовал программу, которая делала это, но только для частных методов/свойств (вещи, которые она гарантирует, не использовались другим проектом).Даже если бы я мог вспомнить, что это было, это не отвечало моим потребностям.

Я просмотрел nDepend, но не уверен, является ли это чем-то стандартным в приложении или мне нужно будет написать для него собственный оператор CQL.

Кто-нибудь знает приложение, которое это делает, или если nDepend может это сделать, насколько сложно это будет сделать в nDepend?

Это было полезно?

Решение

Resharper может предоставить вам такую ​​информацию, если вы включите Широкий анализ решения.

Другие советы

Да, я бы сказал, что NdePend - это инструмент выбора для такого рода анализа зависимостей.

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

AT IS Simply, запрос 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)

Это просто образец, чтобы показать вам, как выглядит CQL. Более продвинутый запрос на поиск неиспользованных методов поставляется с NdePend.

Видеть Блог Патрика Смачкии для получения дополнительной информации.

В целом, другие инструменты (FXCOP и RESHARPER) тоже могут помочь с этим, но этот вид анализа зависимостей является обменом NDEPEND.

Анализ кода (FXCOP) также может найти неиспользованные методы и свойства. Он будет генерировать предупреждения о влиянии «Нет вынужденных абонентов, используя это, рассмотрите возможность его удаления»

Это встроено в Visual Studio 2010 Ultimate. Я использую это.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top