2012-05-23 3 views
2

Учитывая две версии проекта, я хотел бы рассчитать метрики кода.Калькулятор калькулятора кода (не для системы управления версиями)

Пример:

Входной сигнал: Две папки, содержащие C и файлы заголовков двух версий проекта


Выход: Список числа добавленных строк/изменено/удалены в каждом файле

Я пробовал некоторые инструменты, а именно BeyondCompare и WinMerge. Проблема заключалась в том, что сначала требовалось, чтобы все файлы находились в одном каталоге, иначе вы можете сравнивать их, но не получать метрик, второй - в основном инструмент визуализации, также не дал мне показателей.

ответ

2

Одним из инструментов, которые вы могли бы рассмотреть это WebDiff

1

Для кода .NET такая задача может быть достигнута с помощью запроса NDepend Code Query LINQ (CQLinq), такие как (обратите внимание, как вы можете выбрать метрики кода):

from t in JustMyCode.Types 
where t.IsPresentInBothBuilds() && 
     t.CodeWasChanged() // Only match types where code has been changed 
         // between the two versions 
let tOld = t.OlderVersion() 
select new { t, 
    newLoc = t.NbLinesOfCode, 
    oldLoc = tOld.NbLinesOfCode, 
    newNbMethods =t.Methods.Count(), 
    oldNbMethods =t.Methods.Count(), 
    newNbFields =t.Fields.Count(), 
    oldNbFields =t.Fields.Count(), 
} 

enter image description here

0

Сохранены ли ваши версии в системе контроля версий (например, SVN, Git)? Если да, то вы можете вычислить свои показатели оттока, просмотрев журнал системы контроля версий (который уже дает строки, добавленные/измененные/удаленные), даже если две версии не являются последовательными фиксациями.

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