ПЕРВЫЙ ВЗГЛЯД   

VB4 корпорации Microsoft, если и не воплощает мечты разработчиков, то, во всяком случае, отвечает корпоративным нуждам

Прошло два с половиной года с тех пор, как Тестовый центр PC Week Labs отметил выход языка Visual Basic корпорации Microsoft. В течение этого времени интерес разработчиков к технологии Object Linking and Embedding (OLE) корпорации Microsoft постоянно рос; все чаще на корпоративном уровне применялись решения клиент-сервер, и все чаще для создания крупных жизненно важных проектов использовались визуальные инструменты и языки более высокого уровня. Развивается ли Visual Basic в соответствии с запросами корпоративных разработчиков?

Центр PC Week Labs протестировал "золотую" версию Visual Basic 4.0; продукт поступил в продажу в конце сентября. Программа показалась нам гармоничной модернизацией, которая отвечает многим нуждам корпоративных разработчиков, хотя и не воплощает самые сокровенные мечты "технофилов".

Среда Visual Basic теперь представляет собой набор открытых OLE-объектов, и ее можно использовать для создания участвующих и не участвующих в процессе OLE-серверов. Издание Enterprise Edition языка Visual Basic 4.0 вполне подходит для написания распределенных программ нового поколения, обеспечивая совместное использование бизнес-правил и данных, создаваемых большими современными командами разработчиков. Такие серьезные улучшения, базирующиеся на свойственном Visual Basic широком корпоративном подходе, сделают этот продукт интересным практически для любой организации, занятой разработкой программ.

А что же осталось неизменным? Во-первых, язык по-прежнему представляет собой полуинтерпретируемый BASIC с ограниченными возможностями саморасширения и гораздо медленнее выполняет задачи с активным использованием процессора, чем Delphi фирмы Borland International и другие инструменты с реальной компиляцией.

Хотя Visual Basic 4.0 номинально является 32-разрядным продуктом, он сохраняет ограничение в 64 Кб, в самых неожиданных местах напоминая о 16-разрядных средах. Технические сотрудники Microsoft утверждают, что это следствие принятых в процессе разработки решений для увеличения скорости и уменьшения объема кода, а вовсе не "пыльные остатки" предыдущих версий.

При работе с VB4 может выполняться более одного экземпляра

среды-разработки, благодаря чему добавляются новые объектно -

ориентированные операторы

Наконец, Visual Basic с кросс-платформной поддержкой по-прежнему где-то за горизонтом, хотя это можно сказать и про большинство конкурирующих продуктов.

Visual Basic 4.0 будет выходить в трех редакциях -Standard ($99), Professional ($499 -в него входит больше средств управления графическим пользовательским интерфейсом, 16-разрядная поддержка и возможности доступа к базам данных) и Enterprise ($999 -в него добавлены возможности управления исходными текстами, профилирования приложений, передовые возможности работы с базами данных и OLE Remote Automation. Мы протестировали Enterprise Edition.

ИНСТРУМЕНТЫ РАЗРАБОТКИ

Почти каждый инструмент быстрой разработки сейчас любят относить к "VB-типу". В том, что касается быстроты оформления пользовательского интерфейса и добавления функций в приложение, Visual Basic остался непревзойденным -мы отмечали это в недавно сделанных нами обзорах конкурирующих продуктов.

Впрочем, в определенный момент разработки любого проекта необходимо программирование, а редактор исходного кода в Visual Basic 4.0 вполне зауряден. Возможности выделения синтаксиса весьма ограниченны и достаточно неудобны: нет специальной обработки строковых или числовых констант или многоуровневых ограничителей, которая присутствует в других редакторах, например в KEdit for Windows фирмы Mansfield Software Group, а эффекты выделения синтаксиса цветом в редакторе VB4 не проявляются, пока курсор остается на измененной строке.

Затем мы обнаружили в редакторе и среде воспроизводящуюся ошибку, которая приводила к "зависанию" VB4, если мы пытались вставить в редактор большой объем текста или добавить к проекту очень большой файл данных. При работе в KEdit и редакторе среды Delphi таких проблем не бывает.

Инструменты программирования клиентского ПО  Visual Basic 4.0 удовлетворяет более широкому

 ряду требований, чем конкурирующие системы разработки

Проведению операций запроса к данным и отчетов помогают чувствительные к данным средства управления (сетка, список, комбинированная ячейка и независимый от типа OLE-контейнер), а также модернизированная версия системы Crystal Reports фирмы Crystal Computer Services, входящая в комплект этого продукта Microsoft. В соответствии с повышенным вниманием, уделяемым OLE в среде VB4, Crystal Reports теперь поддерживает функции OLE-клиента в отчетах и включает ОСХ (расширенное средство управления OLE) для привязки отчетов к приложениям VB4.

ПРОИЗВОДИТЕЛЬНОСТЬ

Для чистоты эксперимента мы измерили производительность VB4, используя 16-разрядную версию продукта, так что полученные результаты можно было сравнить с результатами работы других 16-разрядных инструментов на 486-й машине под Windows 3.1. Мы собирали результаты в течение нескольких месяцев, последовательно тестируя конкурирующие продукты. И это может оказаться нашим последним обращением к таким тестам, поскольку разработчики теперь больше внимания уделяют 32-разрядным инструментам.

Нас приятно удивило, что скорость VB4 в прикидочных экспериментах на производительность с активным использованием процессора оказалась почти в 3 раза выше, чем у версии VB3. И все же 16-разрядный VB4 отстает от 16-разрядного Delphi примерно в 5 раз.

В операциях интерактивного отображения данных скорость VB4 была примерно на треть ниже, чем у VB3, причем экран неприятно мерцал -сравните с ясным отображением при использовании программы Clarion for Windows корпорации TopSpeed при выполнении того же теста, да и работает она при этом приблизительно на 8% быстрее, чем VB4.

На первый взгляд VB4 кажется продуктом, в котором интенсивнее используются ресурсы, чем в предыдущей версии, поскольку в него входят динамически подгружаемые библиотеки (DLL) большего размера. На практике же разработчики на VB4 будут включать больше компонентов приложений в качестве OLE-серверов с возможностью совместного использования, что полностью окупает эту разницу и делает использование VB4 в большинстве сред эффективнее.

Добиться повышенной эффективности использования ресурсов можно также, выбрав соответствующие дополнительные "многослойные" инструменты типа Business Application Builder фирмы Interga Technology International.

ВНУТРЕННЯЯ АРХИТЕКТУРА

В отличие от сопоставимых REXX-инструментов под OS/2, Visual Basic 4.0 не предлагает своего механизма многопоточного программирования и не использует новые возможности систем Windows 95 или Windows NT. Это не дряхлый GWBASIC, но и широких возможностей использования мощности 32-разрядных платформ он не предоставляет.

Средства управления VBX (расширения Visual Basic), разумеется, должны остаться за пределами 32-разрядных разработок, хотя C++ фирмы Borland не ставит таких жестких условий: Visual Basic 4.0 облегчает переход к ОСХ, предлагая автоматическое замещение VBX с одинаковыми именами, если в распоряжении есть ОСХ-модернизация.

Среди прежних ограничений VB4 -ограниченная длина строки, для которой сохраняется лимит в 64 Кб. Многострочные средства управления TextBox по-прежнему составляют всего "около 32К", как сказано в интерактивной документации. Если верить документации, "большинство ограничений до 64К" 16-разрядного продукта в 32-разрядной версии несколько смягчены. Приложение D инструкции Programmer’s Guide включает подробное описание оставшихся ограничений, некоторые из которых отличаются в версиях под Windows 95 и Windows NT.

Инструменты программирования клиентского ПО

"Basic-диалект" VB4 стал более утонченным и допускает условную компиляцию (единая база кода может включать оптимизированные конструкции для 16- или 32-разрядной разработки). В язык также включены новые операторы With и For Each, позволяющие лучше организовать множественные операции с объектами и итерации для всех элементов набора.

Разработки большого объема в версии Enterprise Edition языка Visual Basic 4.0 стали более управляемыми благодаря системе Visual Source-Safe корпорации Microsoft, которая приобрела эту систему в прошлом ноябре в результате покупки производившей ее компании One Tree Software. Мы бы предпочли, чтобы операции управления конфигурацией были прозрачно интегрированы в меню File, а не помещены в меню Tools, как сейчас, однако это не станет для разработчиков серьезным препятствием.

Использование Visual Basic 4.0 позволит осуществить более широкий коллективный подход к разработкам, учитывая то, как легко в нем можно создавать OLE-объекты многократного использования и делать их доступными для удаленного запуска, разместив их па сетевом сервере. Циники вполне справедливо заметят, что только Microsoft могла позволить себе упаковать удаленный вызов процедур в OLE-интерфейс и предложить такую реализацию па рынке в качестве совместимого вверх шага к созданию полноценной сетевой технологии OLE.

(Самые испорченные из них заметят еще, что Microsoft может позволить себе нарушить и это обещание. Сколько разработчиков отказались бы от OLE в пользу другой модели связи, вместо того чтобы делать постепенную перестройку и затем проводить доходную сетевую OLE-модернизацию?)

Коллективы разработчиков смогут использовать возможности регистрации OLE-серверов, предлагаемые 32-разрядными платформами Microsoft, в качестве архитектуры репозиториев -Visual Basic 4.0 обеспечивает автоматическую регистрацию новых объектов.

ПОДДЕРЖКА ОБЪЕКТНОГО ПРОГРАММИРОВАНИЯ

Когда официальные представители Microsoft говорят об "объектах" в VB4, они имеют в виду OLE-объекты, а не классические механизмы наследования и специализации, которые большинство включает в круг понятий объектной ориентации. Как и среды Smalltalk, например, VB4 включает систему Object Browser (просмотр объектов), однако системы просмотра среды Smalltalk отражают взаимоотношения наследования, а в VB4 она позволяет просматривать каталоги доступных услуг OLE Automation. Каждый из этих подходов хорош по-своему.

Одной из объектно-ориентированных функций VB4 стали процедуры свойств. Эти процедуры запускаются, когда считывается или изменяется свойство объекта. Подобно основанным на фреймах архитектурам, используемым в некоторых экспертных системах, это позволяет разработчику скрывать, что он предпочел: хранить данные под рукой или динамически восстанавливать их в случае необходимости.

Что нового в Visual Basic 4.0

- 32-разрядная поддержка Windows 95 и Windows NT

- Поддержка ОСХ и автоматическая модернизация средств управления VBX с одинаковыми именами

- Улучшенный механизм баз данных, возможности доступа к данным и генератор отчетов

- OLE Object Browser, объекты OLE-документов в наборе инструментов

- Издание Enterprise Edition с функцией удаленной автоматизации, профилировщиком кода и контролем версий

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

ПОДДЕРЖКА БАЗ ДАННЫХ

Новая 32-разрядная версия локального механизма баз данных Jet корпорации Microsoft входит во все три редакции Visual Basic 4.0, придавая ему необычайно мощные возможности, в частности автоматическую репликацию, программируемый доступ к функциям обеспечения ссылочной целостности и защиту.

Редакции Professional и Enterprise языка VB4 включают драйверную поддержку стандарта ODBC 2.0 (Open Database Connectivity), драйвер для SQL Server корпорации Microsoft и возможности удаленного управления данными на основе ODBC, оптимизированные, по утверждению Microsoft, для работы с ее SQL Server и сервером корпорации Oracle.

Разработчикам с расширенными требованиями к сложной поддержке данных следует сравнить VB4 с PowerObjects корпорации Oracle, PowerBuilder Enterprise корпорации Powersoft и Team Enterprise Developer корпорации Symantec.

Разработчики, которые хотят оптимизировать взаимодействие своих СУБД, должны оценить входящий в издание Enterprise Edition инструмент Data Access Explorer. Он предлагает меню тестовых запросов и возможность доступа к разнообразным методам и опциям запросов при помощи щелчка мыши, а также автоматически измеряет время выполнения запросов для сравнения эффективности различных подходов.

ИНТЕГРАЦИЯ РАБОЧЕЙ ОБЛАСТИ И КРОСС-ПЛАТФОРМНАЯ ПОДДЕРЖКА

Microsoft разработала четкую стратегию использования своих инструментов разработки, для того чтобы стимулировать использование новых функций в программных платформах Microsoft. Как библиотека MFC (Microsoft Foundation Classes) рассчитана на облегчение доступа к новым Windows-интерфейсам API, так и VB4 явно предназначен для того, чтобы стимулировать использование новых OLE-механизмов и таким образом создать среди конечных пользователей спрос на OLE-платформы типа Windows 95. Учитывая основанную на OLE архитектуру и поддержку OLE-разработок, мы полагаем, что VB4 добьется успеха.

Методика тестирования  

Мы протестировали инструменты разработки среда Visual Basic 4.0 (корпорант Microsoft), которую можно использовать для создания и 16-, и 32-разрядных приложений. Обратившись к самой мощной верст проекта Enterprise Edition, мы инсталлировали ее на ПК P90PCI фирмы Micron Electronics (машина на 90 МГц процессоре Pentium), оснащенный 16 Мб ОЗУ и работающий под Windows 95.

Мы  протестировали производительность 16-разрядного исполняемого кода Visual Basic 4.0 на системе 466D2LP корпорации Digital Equipment (с 66 МГц процессором 486DX2 и 16 Мб ОЗУ) под Windows 3.1.

Такую же конфигурацию мы использовали для тестирования производительности в недавних обзорах конкурирующих 16-разрядных пакетов разработки.

Поскольку пользователи начинают переходить на 32-разрядные платформы, а конкурирующие с Visual Basic продукты, в том числе Delphi фирмы Borland International и Clarion for Windows корпорации TopSpeed, выходят в 32-разрядных изданиях, мы также будем проводить свои тесты с использованием 32-разрядной технологии.

Отсюда логически следует, что Visual Basic остается Windows-платформой, тем более что до сегодняшнего дня Microsoft не сделала никаких заявлений, указывающих на то, что она собирается обеспечить поддержку других операционных систем или хотя бы иных, чем Х86, аппаратных платформ, на которых работает Windows NT. Разработчикам, которым нужно кросс-платформное решение, придется воспользоваться другим подходом, и здесь уместно вспомнить о библиотеке MFC и Visual C++.

ДОКУМЕНТАЦИЯ И ПОДДЕРЖКА

Мы обнаружили, что Visual Basic 4.0 легко инсталлируется и отвечает соглашениям Windows 95, в частности он автоматически помещается в меню Start и автоматически обеспечивает удаление программы из панели Add/Remove Programs.

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

Быстрее, чем...

По результатам бета-тестирования, выполненного PC Week Labs, 32-разрядная версия Delphi составит серьезную конкуренцию Visual Basic

Система помощи Windows 95 предлагает отличные возможности поиска, однако Visual Basic 4.0 слишком от них зависит; большая избыточность позволила бы сократить поиск и прояснила бы взаимосвязь функций. Печатные инструкции оказались значительно полнее и лучше организованы, чем онлайновая документация.

Microsoft предлагает несколько уровней технической поддержки: от Standard (бесплатно в течение месяца) до Premier Global (225 тыс. долл. в год).

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

Питер Коффи

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