C/C++ Visual C++ >Статьи
Будущее Си++
Ричард Дрейган, PC Magazine
Усилиями фирм Microsoft и Borland программирование на Си++ выходит
на новый, более высокий уровень.
Поскольку в последнее время основное внимание уделяется языку Java,
кое-кто забывает о том, что Си++ продолжает оставаться "рабочей
лошадкой" программистов. Две существенно обновленные версии компиляторов
Си++ - VisualC++ 5.0 фирмы Microsoft и C++Builder компании Borland -
отличаются поистине уникальными простотой использования и гибкостью. При
разработке VisualC++ основное значение придавалось средствам для
подготовки и редактирования управляющих элементов ActiveX, а создатели
C++Builder сосредоточили свои усилия на средствах RAD (ускоренная
разработка программного обеспечения) для программирования на Си++.
Microsoft Corp. - Microsoft VisualC++ 5.0, Enterprise Edition
Microsoft VisualC++ 5.0, Enterprise Edition (1199 долл.) -
усовершенствованная версия уже известного и хорошо зарекомендовавшего
себя компилятора, дополненна рядом полезных инструментов для
формирования и использования управляющих элементов ActiveX.
Данная версия VisualC++ - часть программного комплекса Visual Studio
фирмы Microsoft - содержит Visual Basic 5.0, обладает повышенным по
сравнению с предыдущими версиями быстродействием, предусматривает целый
ряд функций, обеспечивающих разработку программ масштаба предприятия, т.
е. несомненно представляет превосходный вариант замены ранее имевшегос
компилятора. Как обещали авторы, стоит вам извлечь из коробки и
установить эту версию, и вы увидите, насколько компактнее и
производительнее стали ваши программы на Си++. На наших тестах
наблюдалось приблизительно 10%-ное уменьшение размера программы по
сравнению с полученной при компиляции ее же с помощью VisualC++ 4.2.
Компилятор VisualC++, унаследовавший интерфейс своих
предшественников, работает совместно с программой Microsoft Internet
Explorer 3.0, которая автоматически инсталлируется на вашу систему в том
случае, если ее не было там раньше. Необходимость этого шага вызвана
тем, что основная часть сравочной системы Help и обучающих программ
представлена HTML-страницами, к которым приходится часто обращаться, а
имеющееся оглавление (table of contents) весьма примитивно.
В VisualC++ полностью интегрирован настоящий язык сценариев - Visual
Basic Scripting. С его помощью вы можете не только составлять,
редактировать и запускать макрокоманды, но даже подготавливать
дополнительные модули в среде VisualC++.
На начальных стадиях разработки нового проекта вам поможет "мастер"
AppWizard. Кроме такого базового набора типов объектов, как библиотека
Microsoft Foundation Classes (MFC) 5.0 (которая теперь называетс
Microsoft Foundation Classes and Templates), в VisualC++ предусмотрен
новый, предназначенный дл построения Web-компонентов, - управляющие
элементы ActiveX.
Эта библиотека, которую раньше приходилось загружать с Web-сервера
фирмы Microsoft, теперь входит в состав VisualC++. По-прежнему доступны
и такие старые испытанные средства, как MFC-приложения и ISAPI-объекты
серверной стороны. AppWizard формирует рабочий скелет программы для
любой выбранной цели проекта.
Некоторые инструментальные средства, имевшиеся в версии 4.2,
значительно улучшены. Функция ClassView, обеспечивающая
объектно-ориентированный просмотр ваших классов - объектов, методов и
параметров, - теперь, после внесения в нее изменений, позволяет
просматривать и редактировать параметры и объекты управляющих элементов
ActiveX. Компилятор VisualC++ дает возможность программистам
сосредоточить основное внимание на проектировании программных модулей
проекта, вместо того чтобы разбираться в сложном и малопонятном
синтаксисе программирования ActiveX.
Крупным достижением является и то, что с помощью функции FileView
теперь можно просматривать составные части проектов. В результате
появляется возможность отдельно хранить разные узлы проекта, что очень
важно при коллективной разработке. В комплект поставки VisualC++ входят
программы Visual SourceSafe 5.0 дл управления программами и Microsoft
Repository 1.0 дл организации совместной работы с составными частями
проекта внутри предприятия. Для просмотра в графическом режиме таблиц
любых баз данных ODBC, предусмотрена функция DataView а с помощью
функции Database View можно на ходу выполнять дистанционно отладку
SQL-модулей для Microsoft SQL Server и модифицировать таблицы и их
параметры.
Хотя VisualC++ содержит мощные инструменты редактирования и отладки,
следует отметить, что Microsoft уделяет разработке RAD-средств меньше
внимания, чем фирма Borland. Однако имеющихс инструментов вполне
достаточно для тех программистов, которыми приходится иметь дело с
базами данных SQL Server. Пакет VisualC++ 5.0 фирмы Microsoft с его
новыми средствами для программирования ActiveX и разнообразными
средствами для работы с базами данных несомненно заинтересует многих
разработчиков.
Microsoft VisualC++ 5.0, Enterprise Edition
Цена, рекомендуемая изготовителем: 1199 долл.
Требуемые ресурсы: 20-Мбайт ОЗУ (рекомендуется 32 Мбайт), 180
Мбайт на жестком диске; Microsoft Windows 95 или Windows NT 4.0.
Microsoft Corp., Redmond, WA; 206-936-7329;
http://www.microsoft.com/visualc
Borland International - Borland C++Builder 1.0
Продукт Microsoft VisualC++ 5.0 появился в результате дальнейшего
развития традиционного компилятора Си++, в то время как при разработке
пакета Borland C++Builder 1.0 (1999 долл.) основное внимание уделялось
RAD-средствам.
Компилятор C++Builder унаследовал интерфейс популярной среды
разработки Delphi фирмы Borland, и в его работе используется ее обширная
библиотека Visual Component Library (VCL). Для применения в своих
Си++-программах вы можете даже заимствовать модули на языке Pascal.
Однако за это приходится расплачиватьс необходимостью иметь средства,
обеспечивающие совместимость с программами, составленными для прежних
версий компилятора.
Так же как и в пакете Optima++ фирмы Powersoft Corp., в C++Builder
реализованы средства дл компонентно-ориентированного программирования.
Вы можете не составлять программу "с нуля", а с помощью мыши переносить
готовые управляющие элементы и компоновать из них программу. Вы
помещаете компоненты в формы, а затем привязываете программу к этим
объектам.
В C++Builder предусмотрена хорошо продуманна система для
редактирования программ. Внесите вручную в программу изменения, и вы
увидите соответствующие изменения в проекте. Мы обнаружили, что малейшие
изменения в программе мгновенно отображаются в проекте.
В состав C++Builder входит свыше сотни управляющих элементов из
библиотеки VCL пакета Delphi, а также элементов ActiveX/OCX. В числе
средств из библиотеки VCL и такие стандартные компоненты Windows, как
управляющие элементы ListView и TreeView. Однако исключительное
достоинство библиотеки VCL - наличие управляющих элементов для
построения баз данных, начиная от таких непременных элементов, как grid
(сетка), image (образ), text (текст) и поля memo (текстовое поле большой
длины), и кончая объектами, предназначенными для управления базами
данных в рамках сеанса, а также из таблиц, запросов и даже хранимых
процедур. Кроме того, имеются сетевые элементы дл управления
общепринятыми протоколами Internet - FTP, HTML, NNTP, POP, SMTP, TCP и
UDP.
В комплект поставки продукта включено несколько наглядных примеров
уже готовых элементов ActiveX. Модуль Object Inspector будет служить как
бы командным пунктом. Мы использовали его для поиска форм и других
объектов, затем для задания их параметров и при разработке приложений
для привязки программы к обработчикам событий. В процессе тестирования
мы убедились, что интерфейс пакета так же хорошо продуман и
полнофункционален, как интерфейс среды Delphi.
Компилятор C++Builder разработан в полном соответствии со
спецификацией ISO C++, в том числе и в отношении средств для работы с
библиотекой Standard Library. Отметим лишь один существенный недостаток
- иногда непросто обеспечить преемственность программ; теоретически
унаследованные программы компилируются, но, как только дело доходит до
обращения к VCL, приходится заново продумывать проект и, как правило,
всерьез перерабатывать программу. Для того чтобы провести тест на
производительность Си++-программ, нам пришлось приложить некоторые
усилия по адаптации нашего непредусматривающего обращений к VCL проекта,
чтобы он работал в среде C++Builder.
C++Builder (подобно Delphi) - превосходное средство для разработки
баз данных. Вы можете строить запросы и связывать их с формами и
управляющими элементами, практически не прибегая к программированию.
Составлять программы вам помогут "мастера", предусмотренные дл всех
средств пакета, кроме этого, обеспечиваетс возможность визуального
проектирования форм с активными данными. Совсем не обязательно хорошо
знать язык SQL, для того чтобы сразу начать эффективную работу с этим
пакетом. C++Builder - это первый продукт, который позволяет
программирующим на Си++ воспользоваться всеми возможностями среды Delphi
и других популярных RAD-средств.
Borland C++Builder Client/Server 1.0
Цена, рекомендуемая изготовителем: 1999 долл.; модернизация
предшествующей версии 300 долл.
Требуемые ресурсы: 16-Мбайт ОЗУ (рекомендуется 24 Мбайт), 130
Мбайт на жестком диске; Microsoft Windows 95 или Windows NT 3.51 либо
4.0.
Borland International Inc., Scotts Valley, CA, 408-431-4122;
http://www.borland.com
Лабораторные испытания. Компиляторы Си++
При выполнении наших тестов компилятор Microsoft VisualC++ 5.0 по
своим показателям неизменно превосходил пакет Borland C++Builder
Client/Server Suite 1.0. На тестах Encryption и Decryption измерялась
производительность при выполнении шифрования и дешифрования 60-Кбайт
файла в памяти с использованием классов Си++. На тесте Executable Size
оценивалс размер полученного в результате исполнимого файла тестируемой
программы. Для сравнения здесь приведены результаты испытаний пакета
Microsoft VisualC++ 4.2.
|
Encryption
Число итераций за 30 с |
Decryption
Число итераций за 30 с |
Executable Size
Кбайт |
Borland C++Builder 1.0 |
518 |
1419 |
352 |
Microsoft VisualC++ 5.0 |
680 |
2228 |
176 |
Microsoft VisualC++ 4.2* |
699 |
2044 |
202 |
* Приводится для сравнения
|