Предыдущая серия. Весь сериал.
Если не указано явно - всё бесплатно, проверено и используется на практике. В .NET проектах (есди это ещё не видно из контекста;)). Курсивом – комментарии со стороны.
Code analysis & control:
- FxCop он же VSTS Code Analysis. Для любителей экстрима – туториал по написанию custom rules. Другой актуальной документации нет, т.к. планируется тотальное перелопачивание всего API (сроки неизвестны), зато есть форум и блог.
- StyleCop aka Source Analysis. Требует обработки напильником (отключения самых надоедливых правил).
- Reflector. Сборка адд-инов к рефлектору.
- Refractor. Незаслуженно малоизвестный инструмент для получения call-графов, диаграмм зависимостей и т.п из сборок. Для изучения кода юзабельней Dependency Graph из VS 2010b2 (ждём релиза?). Полезен для оценки общего уровня. Самый простой критерий – можно ли понять как класс работает, пользуясь только class methods.
Perf:
- CLR profiler. Слегка мёртв, единственный недостаток – бесплатность;)
VS 2008 add-ins:
- Power commands for VS 2008. Самая полезная вещь – автоматическое форматирование документов (и сортировка using) при сохранении. Крайне полезна при прохождении квеста “StyleCop approved”. Слегка глючноват, главная проблема – ругается “нельзя изменить документ” во время build’a.
Кроме этого умеет:- копировать путь/открывать в проводнике/запускать cmd для любого элемента/папки в Solution;
- сворачивать все елементы в Solution explorer;
- копировать-вставлять элементы. Иногда удобней чем drag-drop;
- закрывать все окна (а не “все кроме текущего”);
- кучу менее полезных действий (см. описание на сайте)
- Resource refactoring tool. Занимается только тем, что вытаскивает выделенную строку в ресурсы. Иногда не работает под x64.
- Build Version Increment Add-in. Настраиваемый способ инкремента. При включённом автоформатировании - жалобный диалог во время сборки.
Багфича от power commands. - Tytan.NET. Полезен разве что созданием конструктора/свойств по выделенным переменным.
Version control:
- Visual SVN Server. Всё что надо для локального хостинга мелких репозитарев: MMC-консоль, Windows-авторизация, настроенный https из коробки.
- AnkhSVN. Единственная правоверная (через SCC) интеграция VS и SVN.
- Tortoise SVN. Исправляет глюки Анк’а и вносит свои собственные. Кто-то из этой парочки нерегулярно рушит репозитарий вплоть до мусора на выходе. Возможно, виноват VisualSVN, но поскольку случалось всего раза два с перерывом в полгода – несмертельно.
- SVN Monitor. Если вам не хватает popup’ов в области уведомления.
WPF Tools (VS 2008):
- Performance Profiling Tools for WPF. Расшифровать?;)
- Mole – debugging visualiser.
- XAML Power toys.
- XAML Markup Attribute Sorter. Не проверен, т.к. с wpf сейчас не работаю.
- Snoop – visual tree explorer & debugging. Честно говоря, mole полезней.
DB tools:
- SSMS Tools Pack. Крайне фичастая сборка – смотрим описание.
- VSTS 2008 Database Edition GDR R2. Проекты БД для любой из поддерживаемых СУБД (кроме default dbms - IBM DB2, возможно - Oracle, MySQL). Одна из немногих вещей которая оправдывает приобретение VSTS для разработчика.
Напоследок - VS Gallery. При некоторм терпении найдётся всё вышеперечисленное.
HINT: выбор в одной категории (например, Visual Studio Versions) не сбрасывает выбор в другой (например, Cost Categories).
HINT#2: Есть RSS – можно получать уведомления о новых продуктах/обновлениях.
Комментарии и дополнения requested.
Про какие программы стоит написать подробней?
UPD (по заявкам):
- CodeRush Xpress for C# (спасибо Кириллу Осенкову за ссылку!) – бесплатна для пользователей VS (кроме Express-версий). Из минусов – отсутствие каких-либо интересностей (большую часть предлагаемых рефакторингов проще сделать перетаскиванием текста/сниппетами), лёгкая тормознутость (но до решарпера ещё расти и расти;)).
Мелкий баг – из-за кастомной настройки менюшек окно настроек находится только через подсказки.
С выходом 2010й студии (generate from code, reference highliting) окончательно потеряет смысл. Если всё-таки не потеряли интереса - статья–обзор.
NB: всё вышесказанное относится только к бесплатной версии. Никаких наездов;)
NB#2: существует альтернативная точка зрения. - GhostDoc. Генерирует XML комметарии, анализируя название метода, класса итд, по нажатию шорткарта. Гибкие настройки. Умеет актуализировать комментарии при изменение параметров функций (типы параметров, добавление/удаление параметра), перенимает коментарии базового метода. Незаменима при включенной опции проекта "Генерировать XML документацию. Спасибо Kalina9001!
- PInvoke Visual Studio Add-in. Установка с бубнами для VS 2008. Сервис для работы с www.pinvoke.net – сборнику сигнатур для platform invoke. Пример использования.
Снова спасибо Kalina9001! - Раз уж речь зашла об интернет-сервисах: www.connectionstrings.com – справка по форматам строк соединения.
Так же из минусов кодража и рефактора - дикая тормознутость и безумная сложность настройки. Хотя эти тузы безусловно производят "вау эффект", когда их первый раз видишь :)
ОтветитьУдалитьА как же WinDbg, MS LogParser, MS Remote Debugger и Reflector.
ОтветитьУдалить>А как же WinDbg, MS LogParser, MS Remote Debugger и Reflector.
ОтветитьУдалитьReflector - будет отдельный пост.
WinDbg, MS LogParser, MS Remote - не пользую, возможностей студии за глаза хватает.
Если у вас будет время - распишите краткий комментарий по каждой, добавлю.
Спасибо!
Reflector - есть отдельный пост:
ОтветитьУдалитьhttp://whocodes.blogspot.com/2009/11/reflector-add-ins-pack.html
> Build Version Increment Add-in
ОтветитьУдалитьРаботает только с .NET! Предупреждать надо.
Ок.
ОтветитьУдалитьВы забыли о Visual Assist - это классная примочка.
ОтветитьУдалить>Вы забыли о Visual Assist.
ОтветитьУдалитьА так же о решарпере и кодраше.
Как-то не с руки рекламировать коммерческие вещи при наличии бесплатных аналогов.
Причём получается баш на баш по производительности: что тормозит пользователь из-за бедности функционала freeware, что студия - из-за его перегруженности.
Разумеется, всё субъективно:)
Кстати, какими вкусностями пользуетесь от assist'а? Почти весь рефакторинг есть из коробки, зато понравились автодополнение/скобочки... Что-то пропустил?