Вот такая вот сегодня на первый взгляд непонятная тема поста :). Долгое время я определялся с тем набором инструментов, дополнительных программ и он-лайн сервисов, которые я бы постоянно и, самое главное - плодотворно использовал в своей работе с Delphi. Думаю, что на сегодня мой список сформировался и теперь остается только выработать действия по работе с инструментами до автоматизма. А пока я этого не сделал, то есть ещё время узнать у других, то есть - у Вас, что Вы используете в работе над своими проектами. Было б интересно прочитать подобные обзоры в блогах по Delphi. Вдруг да проскочит какой-нибудь хороший инструмент или программа (желательно бесплатная), которая окажется лучше той, что выбрал я - будет возможность пересмотреть свои приоритеты. Опять же обмен подобной информацие может способствовать формированию неплохой подборки полезных инструментов и программ для Delphi-программиста.
Итак с каким инструменарием я сейчас дружу (или стараюсь дружить).
"Родные" инструменты Delphi
To-Do List
Про этот замечательный, на мой взгляд, инструмент я уже рассказывал в блоге. Регулярное использование этого инструмента, особенно, когда количество строк кода исчисляется тысячами, а количество модулей десятками, очень помогает не заблудится в своих же "напоминалках" и комментариях. С помощью To-Do List'а обычно помечаю места в коде, которые на мой взгляд могут потребовать доработки, необходима проверка и т.д.
History
Описание этого инструмента Delphi можно посмотреть в статье "Delphi IDE. Инструмент History.".
Несмотря на то, что сегодня использую для хранения копий проекта он-лайн сервисы, этот инструмент также не отключаю в настройках. Особенно полезен History, когда нет как раз-таки возможности использовать для работы Сеть. С ним всегда можно, в случае острой необходимости, "откатить" проект назад на N-ное количество времени или посмотреть какие изменения были проведены, начиная с какой-либо даты.
Он-лайн сервисы
GitHub
— веб-сервис для хостинга проектов и их совместной разработки, основанный на системе контроля версий Git.
Признаться, когда перевозили "Google API в Delphi" на GitHub, у меня были некоторые опасения в плане того, что не смогу привыкнуть к новой системе контроля версий, будут проблемы с перевозом исходником и т.д. Но, надо сказать, за весьма непродолжительный срок привык к использованию Git, причем как из консоли, так и с помощью TortoiseGit и несколько не жалею и даже рад тому, что мы переехали. Особенно радует возможность делать коммит без доступа к репозиторию (хотя, конечно понятие "репозиторий" в Git несколько абстрактно), а потом все изменения "пачкой" отправлять в свою ветку. Учитывая то, что периодически мой провайдер меня рабует разрывами связи - эта возможность очень пригождается в работе. Опять же безпроблемная работа с branch'ами и т.д.
В общем, как говориться, слов нет - одни слюни.
Google Code
Несмотря на то, что работаю плотно с Git, этот он-лайн сервис также не забываю. Хотя как сказать "не забываю"...вобщем сейчас использую сервис как резервное хранилище некоторых своих исходников.
В целом по он-лайн сервисам можно сказать, то, что не важно над чем идёт работа - над супер крутым программным комплексом или же вы разрабатываете простой и удобный php редактор для своих друзей и знакомых, исходники которого в случае чего можно легко вспомнить на память - он-лайн сервисы использовать необходимо, особенно в нынешних реалиях, когда почти повсеместно используется безлимитный Интернет. Свой компьютер и свой винт, флэшка и т.д. - это хорошо, но, как известно и про старуху бывает пор...хотя это уже лишнее. Двигаемся дальше по моему мини-обзору инструментов.
Программы
Git Bash, TortoiseGit
Про TortoiseGit я рассказывал, когда писал свою шпаргалку по работе с Git. Удобная софтина, хотя и немного глючная. Помогает достаточно быстро адаптироваться к работе с Git после использования SVN.
Соответственно Git Bash - консоль для работы с Git. Опять же привыкание к консольным командам очень способствует пониманию работы с Git в целом и пониманию того, что хочет от Вас TortoiseGit в частности. Подумываю даже полностью перейти на Git Bash, т.к. написать одну команду в консоли часто бывает значительно быстрее, чем тыкать кнопки в менюшках "черепахи".
CodeMerger v.1.1
Продолжая разговор о работе с исходным кодом, думаю, что стоит упомянуть также и CodeMerger v.1.1. Конечно, в основном использованию этой программы я обязан конкурсу, который проходил на DelphiFeeds.ru и благоприятному стечению обстоятельств. Без конкурса я бы врядли сподобился купить программу, но нельзя не отметить её удобство при работе как раз-таки с исходным кодом Delphi. Несмотря на то, что официально была заявлена поддержка работы в качестве анализатора кода в TortoiseSVN, у меня CodeMerger без проблем "встроился" и в работу с TortoiseGit. Вообще, складывается впечатление, что программа заработает с любой из "черепах".
Особенно удобно CodeMerger использовать, когда в модуле куски кода начинают "перемешиваться". Обычно, в этом случае утилиты обработки текстов указывают на якобы различия, а CodeMerger - нет. Анализатор кода в CodeMerger ищет различия именно в программах, а не в текстах. В общем, хоть и не часто, но использую программу и результатами доволен как слон.
HTML Help WorkShop
На первый взгляд, может показаться, что HHW несколько геморройная сложноватая программа для составлени Help'ов для Ваших программ. Но я остановил свой выбор именно на этой программе вот почему.
Во-первых, это, если можно так выразиться, "родная" разработка M$ - следовательно вероятность возникновения каких-либо нехороших непредвиденных ситуаций и просто банальных глюков сводится к минимуму.
Во-вторых, при знании HTML даже на очень среднем уровне, создать необходимые топики справки, устроить навигацию и т.д. не составляет никакого труда.
Пробовал использовать HelpNDoc, но из всех его плюсов могу вспомнить только визульный редактор, который мне, честно говоря, как собаке пятая нога.
А HHW простой и прямой как древко копья инструмент для создания приличной chm-справки. Никаких лишних наворотов - строго и по теме.
Doc-O-Matic 6 Express
Если для пользователей программ я использую HHW, то что касается документации непосредственно к коду, то тут я остановил свой выбор на Doc-O-Matic. Опять же объясню почему.
Во-первых, мне понравилось само оформление справки.
Во-вторых, Doc-O-Matic 6 Express бесплатен.
В-терьих, сама программа устроена достаточно удобно и, я бы даже сказал, со вкусом. Нестраиваем параметры проекта, сохраняем в файл и потом этот файл "скармливаем" в редактор справки Doc-O-Matic. Потом файл можно, например, переслать другим участникам проекта - они вносят в него небольшие изменения и создают другие разделы справки и т.д.
Также пробовал использовать ещё один бесплатный инструмент для создания документации - PasDoc. Но он мне как-то не приглянулся. Видимо сказалось сравнение с Doc-O-Matic. Кстати, с использованием PasDoc создавалась документация для библиотеки Synapse - можете посмотреть на офф. сайте оформление документации.
Вот пожалуй весь мой инсрументарий на сегодняшний день. Какие-то инструменты я использую часто, какие-то реже, но используется все.
А какие Вы используете инструменты, программы, сервисы? И самое главное - почему именно эти инструменты и сервисы?
Если вы теряетесь в догадках, как правильно выбирается управляющий домом , то братитесь к профессионалам на free-time.in.ua.
-------------------------------------------
| Делись! | Загружай! | Плюсуй! |
| | |









13 Июл 2010 в 1:01 пп
[New Post] Инструментарий Delphi-программиста. Кто с чем, зачем и почему? — via #twitoaster http://www.webdelphi.ru/2010/07/instrume...
13 Июл 2010 в 4:50 пп
Влад,
git bAsh — bash в linux — командная оболочка (shell)
Для git’а я бы еще порекомендовал сервис gitorious.org который можно распространяется в исходных кодах и можно развернуть на сервере своего предприятия.
Альтернатива CodeMerger — WinMerge.
13 Июл 2010 в 6:19 пп
Kirill Krasnov, спасиб за поправку. Вот я тупанул :) Ещё думал как бы не ошибиться — всё в голове держал как раз линуксовый bash :)
По поводу WinMerge и CodeMerger — CodeMerger тем и отличается от WinMerge , что имеет синтаксический анализатор.
13 Июл 2010 в 8:55 пп
Я бы аддоны к дельфям еще вспомнил — castalia, mmx, cnpack.
Из утилит регулярно юзаю ibexpert для ковыряния в базах.
Удобно работать вместо сервера хранения версий с dropbox. И еще важный сервис для поиска Арта к in house проектам — findicons.com ну и deviantart
Также не забываем про классику жанра — notepad++ и far manager для причесывания папок с проектами.
14 Июл 2010 в 1:11 дп
History конечно хорошо, но и git и svn лучше… причём не важно в каком месте вы будете держать репозиторий, то ли у гугла за пазухой, то ли на роутере с бекапами по крону на фтп народа с предварительным шифрованием… главное не забывать коммититься и конечно же комментировать)
14 Июл 2010 в 9:25 дп
Посмотрел отличия CodeMerger. М/б он и хорош для сравнения изменений в файлах, но для систем CVS и DCVS они все равно будут разные.
14 Июл 2010 в 1:19 пп
По поводу, ToDo List — согласен на 100%! Очень удобный инструмент! А для todo на задумки, требующие скорейшей реализации пишу прям в коде
{$message hint ‘ Сделать что-нибудь’} — и при компиляции среда все мои заметки показывает в окне Messages.
Работаю в Delphi 7 — встроенного инструмента для рефакторинга нет. Поэтому использую CodeFactor. Мне кажется его функциональность даже богаче встроенного инструмента рефакторинга в Delphi 2009, судя по тому, что я видел.
А для переименования unit’ов по всему проекту очень подходит CodeWrench с установленным плагином RenameRefactoring.
Очень помогают в работе инструменты анализа кода — CodeLens, Pascal Analyzer. Тут тебе пожалуйста и проверка соблюдения правил кодирования и
всякие полезности вроде информирования о виртуальных методах предков ни разу не переопределенных в наследниках.
По поводу возможностей самой среды — для билда, создания инсталляции (Wise InstallMaster), выкладывания на файловый сервер использую bat-скрипты, которые в Delphi 7 можно добавлять, как проекты, непосредственно в bpg-файлы. (http://opportune-fl.livejournal.com/3585.html) В результате в два щелчка сразу из IDE выполняю любые действия над проектом — осуществляю сборку, независящую от настроек IDE, собираю инсталляцию и размещаю её на сервере.
Здесь еще совсем немного заметок по сабжу:
http://opportune-fl.livejournal.com/11775.html