Стоит ли использовать FxCop и почему?

Я работаю над проектом в C # .net и WPF. Мы используем StyleCop, чтобы помочь придать проекту единообразный стиль, и после отключения некоторых правил мы полностью им довольны. Однако я слышал, как люди говорят о FxCop, и что это тоже принесет пользу проекту. Насколько я понимаю, это больше связано с структурой кода ..?

Может ли кто-нибудь назвать мне конкретные причины, по которым мы должны начать использовать FxCop? Какие самые важные вещи FxCop гарантирует, что мы будем делать правильно?


person stiank81    schedule 27.01.2010    source источник
comment
Также посмотрите stackoverflow.com/questions/1867867   -  person andreas    schedule 27.01.2010


Ответы (3)


Он обнаруживает некоторые полезные условия и может улучшить ваш стиль кодирования. Под стилем я подразумеваю не только размещение скобок и так далее. Но такие проблемы, как абстрактные классы, имеющие общедоступные конструкторы, и многие другие специфические случаи. Это такие мелочи, которые он улавливает, и через некоторое время вы делаете их автоматически.

Начать новый проект с ним легко, использовать его с существующим труднее, так как он обнаружит больше проблем. Стоит отметить, что сначала вам нужно будет настроить FxCop, так как он укажет на тривиальные вещи, которые могут не вызывать беспокойства.

person Finglas    schedule 27.01.2010
comment
Все ли правила сначала активны, а потом можно отключить те, которые вам не нужны? Нравится StyleCop ..? - person stiank81; 27.01.2010

FxCop работает с скомпилированными двоичными файлами, а StyleCop анализирует исходный код напрямую.

Возможно, вы могли бы использовать его, чтобы проверить, соответствует ли скомпилированная сборка, которую вы отправляете в свою среду контроля качества / производственную среду, политикам вашей компании, если кто-то попытается обойти ваши правила StyleCop.

person Rubens Farias    schedule 27.01.2010
comment
Вы говорите, что он использует многие из тех же правил, что и StyleCop, но вместо этого проверяет это на скомпилированных двоичных файлах? - person stiank81; 27.01.2010
comment
Я имею в виду; Я думал, что FxCop проверил и совершенно другие правила. - person stiank81; 27.01.2010
comment
Да, потому что доступна разная информация; Хотя некоторый набор правил является общим для обоих инструментов, вы можете получить некоторую информацию из исходного кода, а другую информацию можно получить только из сборок. - person Rubens Farias; 27.01.2010

Я использую его в сочетании с CC.NET. Это означает, что каждый раз, когда CC.NET строит мой проект, он также выполняет анализ FxCop, что может быть весьма удобно, поскольку:

  • обнаруживает неиспользуемые переменные
  • обнаруживает неиспользуемые методы
  • указывает, неправильно ли вы написали слово
  • помогает вам напомнить, что вы должны передать поставщик форматирования вызову ToString () f.i.

Вкратце: это помогает вам улучшить качество вашего кода.

person Frederik Gheysels    schedule 27.01.2010