С ностальгией по Visual C++ 6...

Уже не один год прошёл с того момента, как на смену шестой версии среды от разработки от Microsoft пришла Visual Studio .NET. В целом, конечно же, нужно очень сильно покривить душой, чтобы сказать, что Visual Studio от версии к версии становится всё менее удобной: на деле всё обстоит с точностью до наоборот, так что "Майкрософту" за это только спасибо. Однако, нужно отметить, что Visual Studio .NET сильно отличается от шестой "Студии". В лучшую сторону, но я знаю людей, у которых переход к Visual Studio .NET с версии 6 вызвал массу проблем. Причём это был, как ни странно, именно психологический дискомфорт. Для меня это было, конечно же, загадкой: как можно отказаться от более удобной вещи в пользу менее удобной. Мне ответили, что я прав, и нормальный человек так не поступит. Просто в данном случае критерием удобства выступала не столько скорость разработки или удобство работы в новой версии среды, сколько необходимость отказываться от старых привычек. Такое происходит, конечно же, повсеместно, и не только с программистами, но, в общем-то, тем не менее, данный пример весьма показателен.

К чему я сейчас вспомнил о старушке Visual Studio 6? К тому, что программа, о которой я сейчас вам расскажу - практически клон одного из составляющих этого легендарного пакета для разработки, а именно - Visual C++ 6. В новой "Студии" корпорация "Майкрософт" как бы уравняла все языки программирования, организовав работу с ними в одной и той же среде. В старой каждый язык был по отдельности, и никто бы не спутал Visual Basic, Visual C++ и, например, Visual FoxPro. Честно говоря, я думаю, что такой подход был более хорош: теперь языки как-то потеряли свою индивидуальность, и нет уже того колорита, который придавала конкретному языку конкретная среда разработки. Но сейчас объединение нескольких языков в одной интегрированной среде - общая тенденция, которой следуют и Microsoft, и Borland, и менее именитые производители.

Впрочем, программа, невзирая на заголовок статьи, пригодится не только тем, кто ностальгирует по шестой версии MS Visual C++. Она - а зовут её MinGW Developer Studio - пригодится всем, кто ищет хорошую бесплатную среду разработки. И полезна она именно потому, что копирует Visual C++ 6 - не придётся переучиваться, как, например, в случае в Bloodshed Dev-C++, о которой я писал уже когда-то. А сейчас, нисколько не умаляя достоинств детища Bloodshed Software, я хочу рассказать о достоинствах его конкурента, которому, собственно, и посвящён этот обзор.

Найти MinGW Developer Studio в интернете совсем несложно, поскольку официальный сайт проекта такой: www.parinyasoft.com. Там можно найти документацию, описание, а также скачать дистрибутив для одной из трёх поддерживаемых операционных систем: Windows, Linux или же FreeBSD. Тем, у кого нет компилятора GNU C++, лучше выбрать вариант дистрибутива с уже встроенным в него компилятором. Версии для разных операционных систем не слишком разнятся между собой, но, тем не менее, хочу предупредить, что сейчас я веду рассказ о версии для Windows.

Разработчик MinGW Developer Studio постарался сделать её интерфейс максимально похожим на интерфейс Visual C++ 6, и это мы видим с первых минут, даже по иконке проекта. Цвета совпадают полностью, только вместо ленты Мёбиуса - разноцветный ромб. Заставка, висящая на экране те несколько секунд, что программа загружается, обладает, правда, уже меньшим сходством с аналогичной от "Майкрософта", зато после загрузки пользователь видит интегрированную среду разработки, очень-очень похожую на Visual C++ 6.

 

Список возможных видов новых проектов также менее богат, чем в Visual'е. Вариантов всего четыре: консольное приложение, оконное приложение, а также динамически или статически компонуемая библиотека. И никаких тебе MFC Application Wizard'ов... Так что оконные приложения нужно будет создавать на "голом" Windows API, безо всяких там MFC (Microsoft Foundation Classes - библиотека для создания оконных приложений, предлагаемая корпорацией "Майкрософт" в Visual C++). Правда, говоря откровенно, не так уж MFC и хороша, чтобы горько и безутешно сожалеть о невозможности её использовать.

Работать с кодом в MinGW Developer Studio достаточно удобно. Естественно, имеются подсветка синтаксиса, автоматические отступы, подсказки, и вызов нужного раздела справки по F1. Но это всё было и в шестой версии Visual C++. MinGW Developer Studio в меру своих сил старается не отставать от времени, и, в отличие от своего "прообраза", поддерживает фолдинг (сворачивание отдельных участков) кода. Это действительно полезная возможность, и, думаю, её оценят по достоинству даже самые консервативные поклонники и фанаты Visual C++ 6.

Отладка в среде MinGW Developer Studio производится с помощью отладчика GNU Debugger (GDB) и, как и всё остальное в программе, не слишком отличается от аналогичного процесса в среде Visual C++ 6. Отладчик довольно тесно интегрирован в среду разработки, поэтому работать с ним вполне удобно.

Остальные функции среды разработки, в целом, стандартны и естественны для любого нормального IDE. Предварительный просмотр и печать исходных текстов, управление файлами проекта, поиск по тексту и переход к строке с определённым номером, возможность быстро переключаться между отладочной конфигурацией компилятора и конфигурацией для релиза. Поскольку среда старается походить на Visual C++ 6, то имеет многодокументный пользовательский интерфейс. Кроме того, как я уже говорил, MinGW Developer Studio умеет работать на разных платформах. А текстовые файлы в операционных системах семейства Windows отличаются от аналогичных в UNIX-подобных системах тем, что имеют разные символы, обозначающие конец строки. MinGW Developer Studio умеет работать как с текстами Windows-формата, так и с текстами в формате UNIX. Для тех, кто разрабатывает кросс-платформенные приложения, это должно быть полезной особенностью.

Как я уже говорил, собственного MFC в MinGW Developer Studio нет. Однако разработка оконных приложений всё же возможна, поскольку вместе с программой поставляется качественный и удобный редактор ресурсов, к которым в Windows относятся и диалоговые окна. Для доступа к этому редактору нужно в меню "Tools" в главном окне программы выбрать пункт "Resource Editor". Редактор ресурсов - совершенно отдельная от самой среды разработки программа, и, если она нужна вам без MinGW Developer Studio, вы легко найдёте её в Сети по адресу radasm.visualassembler.com. Размер редактора ресурсов совсем небольшой, так что скачать его будет не трудно. Однако, если вы уже скачали дистрибутив MinGW Developer Studio, скачивать этот редактор отдельно не имеет никакого смысла.

Редактор ресурсов, на мой взгляд, ничуть не менее удобен, чем аналогичный из Visual C++ 6. Правда, иконки и битмапы в нём редактировать нельзя, но их было не очень удобно рисовать и в Visual'е, зато, по крайней мере, есть под рукой хороший редактор диалоговых окон. Конечно, в плане удобства разработки пользовательского интерфейса это совсем не то, к чему привыкли программисты, использующие Borland Delphi или Visual Studio .NET, но зато очень похоже на старый-добрый Visual C++ 6.

Справки по среде разработки или по языку C++ в дистрибутиве MinGW Developer Studio вы не отыщете. Имеется только достаточно обширный справочный файл по стандартным функциям и типам данных, используемым при программировании под 32-битные операционные системы семейства Windows. Именно по нему ведётся поиск, если нажать в окне редактора справки клавишу F1. Примерами разработчик тоже не балует: в папке "Samples" (англ. "образцы") только два приложения: традиционное "Hello, world!" и пример использования функции MessageBox. Впрочем, для опытных программистов это не так уж и существенно.

Что ж, давайте, пожалуй, подведём итоги. MinGW Developer Studio - качественная и бесплатная среда разработки приложений на языке C++, умеющая работать на нескольких разных платформах и при этом имеющая интерфейс, очень похожий на интерфейс Microsoft Visual C++ 6. При этом среда весьма функциональна: фолдинг кода, качественный отладчик и удобный редактор диалоговых ресурсов делают её достойным конкурентом не только своих бесплатных собратьев, но даже и некоторых коммерческих сред разработки. Кроме того, поскольку компилятор, на который эта среда "опирается", также является свободным программным обеспечением, то, думаю, тем, кто хочет сэкономить и не нарушать закон, стоит к ней присмотреться.

Вадим СТАНКЕВИЧ

Версия для печатиВерсия для печати

Номер: 

32 за 2006 год

Рубрика: 

Software
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!