Анализ кода Visual Studio vs StyleCop + FxCop

Я использовал ранее StyleCop + FxCop в моих проектах Visual Studio. Но теперь я тестирую инструмент анализа кода Visual Studio, который легче интегрировать в MSBuild, и я обнаружил, что эти инструменты анализируют некоторые из правил как FxCop, так и StyleCop.

Является ли этот инструмент полной заменой как для FxCop, так и для StyleCop или он просто реализует некоторые из своих правил?

Ответ 1

Visual Studio включает FxCop + больше.

Из блог разработчика FxCop:

Извините за мое невежество, но я предполагаю FxCop полностью отделен от Анализ кода в VSTS? Больше в частности, я предполагаю, что если я установить новую версию FxCop, VSTS не будет пользоваться преимуществами код?)? Если это так, любая идея когда эти изменения Анализ кода VSTS? Благодарю!

Это правильно, они разные продуктов, однако они имеют общий двигатель. Visual Studio 2008 SP1 уже поставляется с теми же исправлениями и анализ (плюс немного больше), поэтому нет необходимости "обновлять" Visual Студия с последним FxCop.

A блог разработчика также дал точные правила, которые есть в каждом.

Что касается StyleCop, он не зависит от VS Code Analysis, как описано в этом сообщении в блоге, которое ссылается на Сообщение Jader Dias.

Ответ 2

Мое понимание заключается в том, что Visual Studio Code Analysis - это в основном слегка модифицированная версия FxCop. По моему опыту они почти то же самое (на самом деле я считаю, что Code Analysis использует исполняемый файл FxCop за кадром).

Хотя существует перекрытие между FxCop/CodeAnalysis и StyleCop; FxCop имеет тенденцию больше сосредотачиваться на правилах проектирования, и StyleCop фокусируется на стиле кодирования (корпус, пробел, отступы и т.д.).

Также FxCop анализирует IL, а StyleCop анализирует исходный код напрямую. Это накладывает другой набор ограничений на то, какие правила они могут выполнять каждый.

Ответ 3

До сих пор мой googling приводил к следующему ответу:

http://blogs.msdn.com/bharry/archive/2008/07/19/clearing-up-confusion.aspx

говорится:

"Мы обнаружили, что StyleCop - это, по сути, очень полезный инструмент, и он не делает то, что не делает FxCop и TeamDev (и это не делает то, что они делают). Это замечательный дополнительный инструмент. инструмент для выполнения проверки стиля кодирования для проверки того, что исходный код отформатирован так, как вы хотите, и следует принципам стиля для условных обозначений. Хотя существует некоторое совпадение с FxCop (например, проверка заглавной буквы), перекрытие является незначительным, поскольку StyleCop не выполняет глубокий анализ, который другие инструменты статического анализа делают для проверки корректности кода, проверок безопасности и т.д."

Но я не уверен, что "TeamDev" - это то же самое, что "Анализ кода Visual Studio"