2008-10-23 2 views
7

Я пытаюсь выполнить автоматическую проверку кода и рефакторинг с помощью инструмента. Что-то в строках FxCop или ReSharper.Автоматический обзор кода и рефакторинг

Поиск предложений инструментов, которые отвечают этим требованиям:

  1. Низкий кривой обучения.
  2. Целевой на C# (и, возможно, VB.NET).
  3. Позвольте мне легко добавлять или настраивать правила (и понимает всю CodeDOM).
  4. Хорошо документированы.
  5. БЕСПЛАТНО или дешево. Извините, низкий обменный курс =)

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

Если у вас есть истории, посвященные инструментам, которые вы использовали/используете, это тоже было бы здорово.

Спасибо.

EDIT: Наконец-то прошло некоторое время, чтобы изучить предложения больше. StyleCop не интегрируется с Visual Studio Express Edition, и это то, что я использую. У ReSharper гораздо больше возможностей, чем то, что мне нужно (что чисто автоматизирует обзоры кода). Я бы сказал, что это не очень целенаправленный инструмент для моих целей (а также причина его цены). Все еще ищете другие предложения, если они есть.

EDITDIT: StyleCop НЕ интегрируется с Visual Studio Express, но вы все равно можете настроить его как часть своей сборки в Visual Studio Express. Кажется лучшим решением на данный момент.

ответ

3

Поскольку вы упомянули ReSharper, я бы рекомендовал изучить функцию стилей совместного использования кодов, доступную в одной из последних версий. Таким образом, вы можете заставить свою команду следовать тем же стандартам и стилям кодирования и сообщить им, как они кодируют. Вы можете узнать больше здесь: Sharing Code Styles.

Я также участвовал в проекте, в котором мы запускали FxCop из Visual Studio в качестве процесса создания сообщений. Вы можете устанавливать предупреждения и ошибки так, как вы хотите, в FxCop и даже выходить из строя, если хотите.

от Microsoft StyleCop еще один бесплатный проект по галерее MSDN код, который может быть стоит проверить:

Team System имеет некоторые полезные свойства в нем, но вы сказали, дешевы, так что я даже не буду там :)

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

0

Я не знаю об автоматическом рефакторинге, но вы на правильном пути для анализа. FxCop расширяемый с custom rules, и вы можете использовать StyleCop, чтобы непосредственно проанализировать ваш источник (FxCop рассматривает скомпилированный MSIL). Вы также можете использовать tweak StyleCop, чтобы удовлетворить ваши специфические требования. Что касается истинной «автоматизации», вам придется что-то придумать.Я испорчен тем, что у меня есть VSTS 2008, и автоматизация обеспечивается через IDE. Вы могли бы использовать PowerShell или такие, чтобы создать строительные леса, которые обеспечили первый проход, из которого мог бы работать старший разработчик/рецензент.

+0

Одна общая проблема у меня есть новички, используя имя столбца, чтобы получить значение из DataRow в цикле. Я хочу, чтобы они получили индекс столбца вне цикла и использовали индекс вместо имени внутри цикла. Может ли StyleCop уловить эти ошибки. Документация кажется смутной по этому поводу. – Fung 2008-10-23 03:44:07

1

Я хочу упомянуть Code Metrics, который является хорошим инструментом проверки кода, включенным в выпуски Team System. Если вы не используете эти причудливые версии Visual Studio, вы можете посмотреть StudioTools from Exact Magic Software, что является бесплатным плагином.

1

Review Board бесплатно!

А вот Flickrfeed for Screenshots!

+0

Review Board больше похож на инструмент для управления отзывами, а не для его автоматизации. Это правильно? – Fung 2008-10-24 01:48:43

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