"


Установка
Среда WorkFrame
Отладчик, браузер и анализатор производительности
Open Class Library
Коротко о продукте
Редактор ресурсов
Visual Builder и Data Access Builder
Документация

Мы привыкли к тому, что при упоминании Си++ и Windows немедленно возникают ассоциации с такими фирмами, как Borland, Microsoft и Watcom (искушенные программисты могут вспомнить и о MetaWare). Однако, как выяснилось, корпорация IBM помимо многочисленных продуктов для OS/2, предлагает систему разработки, которая по многим параметрам не уступает другим средствам написания программ на Си++, и даже где-то их превосходит. Называется эта система VisualAge for C++ for Windows 3.5. Более того, существуют несколько продуктов, продаваемых под маркой VisualAge, для различных языков программирования, как, например, Java, Бейсик, Смолток и Си++. И хотя большая часть этих продуктов предназначена для таких операционных систем, как OS/2, AIX, OS/400, MVS и SUN Solaris, некоторые из них имеют варианты для операционных систем Windows.

Итак, что же представляет собой VisualAge for C++ for Windows 3.5. Это набор современных, тесно связанных друг с другом инструментов, с помощью которых можно создавать 32-разрядные приложения для операционных систем Microsoft Windows 95 и Windows NT. В комплект входят:

  • настраиваемая среда разработки WorkFrame, интегрирующая различные инструменты и позволяющая подключать программные средства как самой корпорации IBM, так и средства других поставщиков;
  • программируемый редактор исходных текстов с выделением ключевых элементов цветом;
  • компилятор Си/Си++, умеющий работать со всеми новинками ANSI;
  • оптимизирующий редактор связей (линкер), способный удалять машинный код, к которому нет обращений (мертвый код), и сжимать отладочную информацию;
  • отладчик, учитывающий особенности языков программирования Си и Си++;
  • графическая программа просмотра, отображающая иерархию выбранных классов на экране;
  • анализатор производительности для настройки оптимальной работы разрабатываемого приложения;
  • встроенный менеджер библиотек;
  • система быстрой графической разработки программ Visual Builder;
  • библиотека классов Open Class Library корпорации IBM, с помощью которой можно создавать программы, переносимые на различные платформы, и приложения-интерфейсы, обеспечивающие доступ к базам данных;
  • различные средства разработчика, включая утилиту Make и редактор ресурсов;
  • большое количество различной документации и примеров.
  • Установка

    Для нормальной работы системы VisualAge for C++ for Windows 3.5 необходимо, чтобы ваш компьютер отвечал следующим требованиям:

  • 32-разрядный процессор, желательно 486 и лучше;
  • не менее 8 Мбайт оперативной памяти, хотя для визуальной разработки лучше иметь 24 Мбайт;
  • 285 Мбайт свободного места на жестком диске для установки всего инструментария, или же 370 Мбайт, если вы устанавливаете все примеры и документацию;
  • CD-ROM, поскольку дистрибутив VisualAge поставляется на компакт-диске.
  • Впервые я увидел в продукте IBM человеческую программу установки без запутанных меню и закладок, характерных для инсталляторов этой корпорации. Видимо вхождение IBM на рынок программного обеспечения для персональных систем пошло ей на пользу.

    Устанавливаемые компоненты выбирать удобно, что сокращает время на инсталляцию до минимума. Время установки всей системы составляет около получаса и проходит без каких-либо проблем.

    По окончании установки вы получаете в меню своей Windows 95 (или Windows NT) две новых папки: одну с утилитами комплекта разработки Microsoft Win32 SDK, вторую - с инструментами программиста из пакета VisualAge.

    Одно только непонятно: почему инсталлятор добавляет в autoexec.bat тридцать с лишним строк установки переменных среды? Можно было бы не загрязняя важного системного файла создать отдельный командный файл, как это сделано в средствах Microsoft, и вызывать его по мере необходимости.

    Среда WorkFrame

    Запуская среду разработки WorkFrame, вы получаете возможность открыть существующий проект или же создать новый, воспользовавшись мастером Project Smarts. Окно Project Smarts состоит из нескольких страниц с закладками. Выбрав подходящий шаблон проекта, ответьте на несколько различных вопросов, касающихся настроек создаваемого проекта и его местоположения на диске. С помощью шаблонов Project Smarts вы можете создать следующие проекты:

  • пустой проект;
  • графическую программу с помощью Visual Builder;
  • программу с графическим интерфейсом на базе Open Class Library;
  • программу с помощью Data Access Builder;
  • средства для доступа к базам данных с помощью Visual Builder;
  • динамическую библиотеку SOM-класса;
  • библиотеку ресурсов;
  • динамическую библиотеку на базе Си++;
  • динамическую библиотеку на базе Си;
  • стандартный проект с выводом данных на консоль;
  • сервер и контейнер OLE;
  • библиотеку классов коллекций;
  • электронную документацию формата IPF;
  • HLP-файл.
  • После вызова существующего проекта или выбора шаблона для создания нового на экране возникает среда WorkFrame. В основном все инструменты будут вам знакомы: те же кнопки создания и сохранения файлов, компиляции, вызова отладчика и т. д. Однако есть два элемента, которые присущи только WorkFrame: список расширений, помогающий отобрать файлы определенного проекта, и кнопка вызова утилиты MakeMake. Утилита MakeMake - это генератор Make-файлов для компиляции с помощью командной строки. При создании нового проекта может потребоваться новый Make-файл, описывающий последовательность действий при сборке проекта. В этом случае просто запускается утилита MakeMake и помечаются те действия, которые должны быть проделаны над каждым из файлов проекта.

    В процессе компиляции исходных файлов и редактирования связей все сообщения от запускаемых программ и утилит отображаются в окне Project Monitor. Иногда этой информации так много, что найти в ней что-либо полезное становится довольно трудно. Но зато вы можете сохранить весь полученный текст и впоследствии просмотреть его.

    Одного средства в WorkFrame явно не хватает. Хотелось бы видеть встроенную систему управления множественными проектами и зависимостями. В VisualAge, если вы хотите сделать компиляцию одного проекта зависимой от результатов компиляции другого, вам потребуется скопировать компилируемый первоначально проект в новый каталог, расположенный в каталоге зависимого проекта.

    В состав VisualAge for C++ for Windows 3.5 включен полноценный 32-разрядный редактор исходных текстов. На вид он довольно прост, однако это очень мощное средство. Вы можете выполнять любое действие, связанное с разработкой, не покидая окна редактора.

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

    Среда редактора полностью настраиваемая. Можно, к примеру, выбрать одну из многочисленных раскладок клавишных комбинаций из многих популярных программистских редакторов, включая BRIEF и EPM. Весьма полезными будут возможности изменения линейки инструментов и создания дополнительных средств синтаксического разбора (парсеров). Само собой разумеется, в редакторе есть средство записи нажатий клавиш с последующим их воспроизведением.

    Отладчик, браузер и анализатор производительности

    Отладчик из VisualAge for C++ позволяет отыскать ошибки в созданных программах. Отладку созданных программ можно вести на уровне исходного текста или же на уровне машинного кода, когда программист может просматривать регистры процессора и ассемблерные команды. Ленивые пользователи могут пользоваться только мышью для ввода почти всех команд отладчика: шаг, запуск, установка/снятие точек останова и т.д. Как и многие промышленные отладчики, отладчик из VisualAge for C++ прослеживает многопоточный код и отлавливает необработанные исключительные ситуации. Вдобавок ко всему, он может проверять пул свободной памяти, отыскивая и локализуя проблемы с распределением и освобождением блоков памяти.

    Если вам приходится часто работать со сложными иерархическими библиотеками классов, на помощь придет программа просмотра. Применяя ее, можно рассмотреть, как устроена любая библиотека, увидеть, как происходит наследование классов, открыть файл с описанием существующих классов, обнаружив его среди сотен подобных. Весьма радует возможность получения дерева иерархии без компиляции проекта, как во многих других системах, и прослеживание вызовов от одного метода к другому. Кстати, с помощью этой программы легко определить исключительные ситуации, которые могут возбуждаться теми или иными классами. Хорошим дополнением для разработчиков является возможность сохранения фрагментов отображаемой иерархии в файле или же в виде битового изображения, что особенно полезно при написании сопроводительной документации.

    Когда создается коммерческое приложение, немаловажным фактором в конкурентной борьбе будет скорость его работы. Именно поэтому в пакете VisualAge for C++ имеется профилировщик Performance Execution Trace Analizer. С его помощью вы можете настроить выполнение алгоритма так, чтобы снизились потери времени, были обнаружены "горячие точки" в программе. Но не только для этого предназначен Trace Analizer. Вы можете обратиться к этому профилировщику если в создаваемой программе возникают блокировки или она зависает. В результате вы получите последовательность вызовов и сможете локализовать точку в исходном тексте, вызвавшую проблемы.

    Open Class Library

    Библиотека Open Class Library корпорации IBM - это сердце всей системы. На ее базе можно создавать практически любые программы на языке Си++, значительно экономя время разработки. При этом программы могут быть откомпилированы без изменения на такие платформы, как OS/2, AIX, MVS/ESA, OS/400 и Sun Solaris.

    Множество различных классов входят в состав Open Class Library. Главными из них, без сомнения, являются классы для создания пользовательского интерфейса, ведь именно внешний вид программы в большинстве случаев определяет выбор пользователя. Не менее полезными могут оказаться классы коллекций данных и стандартные классы, создающие алгоритмы работы, скрытые от будущего покупателя вашей программы. Главной изюминкой библиотеки все-таки являются классы Compound Document Framework, применяя которые легко создавать программы с поддержкой таких важных протоколов работы с объектами, как OLE 2 и OpenDoc.

    На базе Open Class Library функционирует важнейший инструмент визуального построения программ Visual Buider.


    Коротко о продукте

    VisualAge for C++ for Windows 3.5 - система быстрой разработки приложений для Windows на языке Си++
    IBM Corporation, тел. в Москве: (095) 940-20-00
    http://www.software.ibm.com

    Редактор ресурсов

    Запуская редактор ресурсов Resource Workshop, я еще сомневался, но когда его окно полностью открылось, и я открыл файл пиктограммы, сомнения рассеялись - это действительно тот самый Resource Workshop, который знаком программистам по компиляторам Borland C++. Как и ранее, с его помощью можно создавать различные ресурсы программ для Windows: пиктограммы, битовые изображения, шрифты и т. д. Для переноса битовых изображений из программ для OS/2 в проекты для Windows имеется специальная утилита. В соответствии с последними веяниями, можно создавать такой относительно новый ресурс, как информация о версии.


    Visual Builder и Data Access Builder

    Инструмент Visual Builder представляет собой генератор для создания прототипов программ или же программ целиком. При этом используются стандартные элементы пользовательского интерфейса операционных систем и некоторые расширения самой IBM, например, холст (canvas), графические кнопки и большое количество заготовок-компонентов, которые программист может встраивать в свои проекты. По завершении проектирования производится генерация кода на языке Си++. Полученный исходный текст можно компилировать.

    Создание программ происходит в среде визуального редактора, преимущественно перетаскиванием компонентов и установлением различных связей. Объектная модель, применяемая в Visual Builder, отличается от того, что предлагают другие системы быстрой разработки программ. Если обычно создается пользовательский интерфейс, и затем к его элементам привязываются обработчики событий, то в Visual Builder упор делается на традиционный подход - взаимодействие между объектами. Поэтому основным принципом создания программ в этой среде является прежде всего разработка пользовательского интерфейса и расстановка связей между объектами. Для удобства связи обозначены стрелками.

    Если вы связаны с изготовлением программного обеспечения для управления базами данных, то вам весьма подойдет дополнение к Visual Builder под названием Data Acces Class Builder. Благодаря этому инструменту, вы получаете сгенерированные классы для таблиц баз данных и методы для управления ими. Жаль только, что распознаются таблицы, созданные лишь для таких СУБД, как DB/2, Sybase и Oracle.


    Документация

    Документация, поставляемая в комплекте с VisualAge for C++, состоит из бумажного и электронного вариантов. В нее входят пять книг:

      "Installation Guide and Product Overview";
      "User"s Guide";
      "Programming Guide";
      "Visual Builder User"s Guide";
      "Open Class Library User"s Guide".

    Только один том "User"s Guide" разочаровал меня. Несмотря на 800 с лишним страниц, слишком мало внимания уделено в нем созданию, поддержанию и редактированию проектов. Мне показалось, что данная информация рассчитана на тех, кто уже знаком со средой разработки WorkFrame. Но другое руководство - "Open Class Library User"s Guide" - как бы компенсирует эту недоработку. Технические писатели IBM поднялись до истинного шедевра. В этом полуторакилограммовом томике (как-никак больше тысячи страниц!) совмещены руководство по программированию с использованием библиотеки классов Open Class Library и справочник по ней. Этот учебник изобилует фрагментами примеров кода, помогающими в изучении, и подробными комментариями. Руководство по программированию ("Programming Guide") также порадовало меня содержательностью и широтой информации по программированию на Си++. В целом документация заслуживает всяческой похвалы.

    Электронная документация, помимо электронных аналогов книг из комплекта поставки, содержит еще три важных элемента: руководство по созданию электронной документации в формате IPF, документацию по Win32 SDK и руководство по программированию SOM - системной объектной модели, на базе которой выполнены многие компоненты программного обеспечения IBM и средства работы с объектами OpenDoc.

    Если в вашем распоряжении имеется PostScript-принтер, то вы можете распечатать эти и многие другие руководства IBM на бумаге из файлов в формате PostScript, имеющихся на дистрибутивном CD-ROM. А можно просто заказать их у представителей компании IBM.

    Для тех, у кого нет времени на чтение толстых томов документаций, авторы VisualAge подготовили обучающую программу, в которой по шагам описана работа с системой. Причем сама презентационная программа выполнена на высоком уровне и очень доступно.

    Итак, подводим итог нашей небольшой экскурсии по VisualAge for C++ for Windows 3.5. Если ваша профессия - разработчик программ на Си++, то вы можете добиться хороших результатов, создавая свое программное обеспечение с использованием этого пакета, причем вы сэкономите деньги и время на переносе ПО на различные платформы.