Как начать использовать ndepend?
-
09-06-2019 - |
Вопрос
Недавно я скачал ndepend и провел анализ проекта с открытым исходным кодом, в котором я участвую.
Теперь я не знал, куда смотреть дальше - небольшая визуальная и информационная перегрузка, и оказалось, что я даже не знаю, с чего начать.
Кто-нибудь может предложить отправные точки?
- Какую информацию я должен искать в первую очередь?
- Что указывает на проблемы в коде (в ЗНАЧИТЕЛЬНОЙ степени)?
- Что бы такое низко висящий плод, который сразу видно?
Решение
Скотт Хансельман / Стюарт Селарье / Патрик Колдуэллс плакат с помощью ndepend metrics есть некоторая полезная информация об этом.Вместо того чтобы пытаться разбить все используемые эвристики, я бы сосредоточился только на нескольких за раз, начиная с "зоны боли / зоны бесполезности" и цикломатической сложности.
Существует также подкаст в котором рассматриваются некоторые основы этого инструмента.
В промежутке между этим и запуском NDepend в нескольких различных проектах вы, возможно, сможете начать собирать полезные данные, которые сможете превратить в аналитические материалы.
Другие советы
При запуске с NDepend самое главное - понять, что Правило кода над LINQ (CQLinq) могу принести в ваш магазин, позволив вам определять запросы к вашему коду и правилам. Здесь вы найдете краткое изложение и исходный код всех 200 правил кода по умолчанию.
Вторая по важности вещь, на которую следует обратить внимание, - это зависимости, имеющие как представление графика зависимостей, который работает рука об руку с представление матрицы зависимостей.Как только вы освоите эти 2 вида, вы сможете точно определить, где код хорошо многоуровневый, а где нет, и где разработчики допустили ошибку.
Затем придет время изучить более подробную функцию, такую как возможность сравните 2 версии вашей кодовой базы, тот самый различные метрики кода и почему они полезны, применяясь статически чистота и неизменность, контролирующий автоматически тестовый охват...
Отличная пара веб-роликов (30-минутных видеороликов), в которых Патрик Смаккиа и Филип Экберг рассказывают о некоторых функциях NDepend и о том, как ими пользоваться:
http://codebetter.com/patricksmacchia/2012/10/31/two-screencasts-on-how-to-demystify-spaghetti-code/