2009-06-19 2 views
6

Есть много ИТ-магазинов, использующих FxCop для написания производственного кода? Если да, то каков был/был ваш общий опыт его реализации с точки зрения сдвига культуры, точек боли и ощутимых преимуществ?Использование FXCop в вашем проекте

Я в среде, которая несколько хаотична и ищет инструменты, которые помогут нам стандартизировать наши усилия в области развития и получить нас домой в достойный час. Я хочу избежать яйца на моем лице, чтобы надавить на инструмент статического анализа, только чтобы он потерпел неудачу, потому что это «не практично». < - (Ожидаемый ответ управления)

ответ

3

Обратите внимание, что FxCop очень настраивается в отношении правил, которые вы хотите применить. Вы можете найти, что он лучше всего работает, постепенно вводя его; только для определенного набора правил для определенного набора файлов или изначально исключая все устаревшие файлы.

Должны быть правила, которые вы никогда не сможете активировать, потому что они просто не подходят вашему проблемному домену. И помните, что если фрагмент кода «нарушает правило» для определенной цели, есть атрибут для маркировки такого кода как приемлемый, хотя я бы установил правило, что все такие переопределения должны использовать свойство Justification для атрибута, чтобы указать, почему ,

Наконец, поскольку встроенные правила помогут значительно улучшить качество кода, действительно большие выигрыши должны быть выполнены в пользовательских правилах, которые позволят вам проверить корпоративные соглашения. Если вы не автоматизируете «рецензирование» таким образом, то вы не можете действительно гарантировать соблюдение.

Я использую FxCop как интегрированную часть системы сборки на работе, и наши общие библиотеки в настоящее время выпускаются со всеми правилами, включенными с минимальными переопределениями атрибутов, и это стоило более чем в нескольких местах.

3

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

Кроме того, Dev управления здесь не был заинтересован в действительно толкая очистки предупреждения, отчасти потому, что FxCop действительно не любит условности (имена переменных, и т.д.), что руководство хочет, чтобы мы следовали ...

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

+2

«не так много мест, которые действительно используют FxCop», мне бы хотелось увидеть ссылку на статистику использования, на которой вы основываете это наблюдение? – jerryjvl

+0

Отрицательная Нэнси, расслабьтесь! Нет статистики использования, поэтому мой вопрос. Для меня это хороший ответ, поскольку я ищу опыт и лучшие практики в реальном мире. Это его опыт, и я благодарен, что он ответил на вопрос! – Zaffiro

+1

@jerryjvl: Что касается статистики, у меня есть только собственный опыт. Как раз возвращаясь за последние 3 года (я подрядчик), я проработал около 6 или около того клиентов. Из них только 2 имели других разработчиков, которые беспокоились о том, чтобы прочитать предупреждения, хотя все они были включены. Единственная причина, по которой эти 2 читали предупреждения, было откровенно, потому что я руководил проектами. – NotMe