2010-01-15 3 views
19

Есть ли инструмент или что-то еще, чтобы подсчитать количество строк в конкретном проекте C#? Просто из любопытства ...Число строк в коде

+3

Любопытство - это хорошо, но я просто хочу указать, что SLOC обычно ужасная «метрика». Eww. http://en.wikipedia.org/wiki/Source_lines_of_code#Disadvantages –

+0

@ Andy: Если вы их не просите ... Я думаю, что IBM это делала. – NotMe

+0

Нет, это просто любопытство. –

ответ

44

Я считаю, есть инструменты, но я считаю, что легче просто использовать Найти в опция файлы и использовать это регулярное выражение:

^~(:[email protected]//.+)~(:[email protected]\{:[email protected])~(:[email protected]\}:[email protected])~(:[email protected]/#).+ 

это регулярное выражение из here, который также показывает, как искать. Он вернет несколько совпадающих строк (т. Е. Количество строк в вашем коде)

+10

Вау! Какой взлом! –

+0

+1 для интересной находки. –

+0

возвращает LOC правильно, но исключает выражения «{», «}», как мы можем добавить «{», «}» для подсчета? –

2

У меня был хороший успех с David Wheeler's SLOCCount. Это инструмент командной строки, который, к сожалению, потребует Cygwin, но я нашел, что он обрабатывал очень большие Java-проекты без суеты. C# указан как поддерживаемый язык для подсчета. Конфигурация минимальная, IIRC Я просто указал ее в каталог, и он суммировал весь тип кода и разбил его на строки по языку.

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

+0

+1 - Я использовал этот инструмент много раз. Он учитывает комментарии и т. П. И работает безупречно. –

16

В Visual Studio 2010 Premium и Ultimate вы можете перейти на вкладку «Анализ» и выбрать «Вычислить метрики кода», это дает вам строки кода, а также индекс ремонтопригодности, циклическую сложность, глубину наследования и метрики сцепления классов , проект по проекту.

Вы также можете просверлить пространства имен и классы/интерфейсы.

+0

не доступен в про версии –

+0

Вы правы, спасибо - я ошибся «Про» для «Премиум» - я обновил ответ выше. –

+2

Для всех, кто хочет использовать это, убедитесь, что ваше решение компилируется, прежде чем запускать метрики кода. Я просто сделал это на довольно большом решении, чтобы получить сообщение об ошибке 15 минут спустя о нехватке точки с запятой в одном файле. – Ocelot20

Смежные вопросы