Получение статистики по C # WAP-проекту для общения с клиентами
-
21-08-2019 - |
Вопрос
У меня есть клиент, который считал, что это очень динамичное приложение ASP.NET приложение было очень простой системой, но для его реализации в том виде, в котором они нуждались для дальнейшего развития, оно расширилось до более чем 100 различных файлов кода.
Я ищу способ, скорее всего, с помощью какого-нибудь инструмента статического анализа кода, ввести некоторые цифры, которые могли бы "иметь смысл" для нетехнического человека.Я полностью понимаю, что строки кода и другие показатели на самом деле не являются "допустимыми" элементами для оценки, но в данном случае это то, что мне нужно, строки кода, количество комментариев XML, общее количество файлов, папок.
Я знаю, что могу посмотреть некоторые из них, но я ищу простой способ получить эти значения оптом!Я нашел здесь несколько старых сообщений, но ничего, о чем конкретно говорилось .NET (текущие версии) и / или C #.
В идеале я хочу что-то, что может исследовать WAP-проект на C #.SQL Server был бы ОТЛИЧНЫМ дополнением к стоимости, но не на 100% необходимым элементом!
Решение
Вы можете использовать этот инструмент NDepend чтобы получить 82 метрики кода, такие как количество строк кода, количество параметров для методов, количество вызывающих методы, процент комментариев к методу, процент покрытия кода тестами, ранжирование (наиболее популярные методы / типы ...).
Все 82 показателя перечислены на этой странице http://www.ndepend.com/Metrics.aspx.
Кроме того, Метрики кода - это всего лишь один из основные характеристики из NDepend:
- CQLinq:Писать правила кода поверх запросов LINQ (поверх 200 Правил кода по умолчанию предоставлено)
- Разница в коде
- График зависимостей
- Матрица зависимостей
- Данные о Тестовом покрытии Жгута проводов
- и даже больше...
Другие советы
Для простых строк кода, смешивания комментариев и тому подобного я нашел VS plugin "Project Line Counter" очень хорошим (http://www.codeproject.com/KB/macros/linecount.aspx).
Если вам нужны более подробные показатели, и я бы предложил простое объяснение цикломатической сложности, это приведет к более глубокому пониманию вашим клиентом и уважению к тому, что вы знаете.Такие инструменты, как Reflector, имеют плагины, которые будут отображать сложность и размер класса в виде блок-схем. Видишь http://www.codeplex.com/reflectoraddins, или более конкретно http://www.codeplex.com/reflectoraddins/Wiki/View.aspx?title=CodeMetrics.