Разработчики приложений для Windows, использующих Delphi компании Borland, будут поражены новой 32-разрядной версией пакета. И даже те, кто никогда не слышал про Delphi, обнаружат массу полезных свойств в Delphi 2.0.
Delphi - это среда быстрой разработки приложений, ориентированная на использование форм. Для создания программы достаточно расположить на экране окна, представляющие формы ввода для вашего приложения, поместить в них элементы управления из палитры, установить их свойства, немного позаниматься программированием, а затем скомпилировать получившийся проект в автономную программу. При кодировании программы используется Object Pascal.
При тестировании последней бета-версии Delphi 2.0 мы не могли не обратить внимания на развитие используемой технологии: в пакет добавлены новые возможности и увеличена скорость выполнения.
Delphi 2.0 создает откомпилированные 32-разрядные программы для Windows 95 и NT. Компилятор Delphi теперь использует тот же аппарат компиляции, что и Borland C++. Это означает, что Delphi выдает такой же быстрый оптимизированный код, что и при использовании компилятора C++. Создаются стандартные объектные файлы, что облегчает одновременное использование в одном проекте модулей Delphi и C/C++. Использование оптимизации кода задается в диалоговом окне проекта. Оптимизацию можно либо полностью включить, либо полностью выключить; частичная оптимизация невозможна.
Ошибки компиляции выявляются все за один проход, а не по одной. Можно перемещаться по списку ошибок, исправляя их по очереди в окне редактора; курсор указывает на строку, содержащую ошибку. Сообщения об ошибках стали более понятными (например, вместо сообщения "Ошибка в выражении" выдается "Пропущен символ точки с запятой"). Компилятор предупреждает о возможных ошибках при выполнении в тех местах, где синтаксис не нарушен.
Программы, созданные с помощью Delphi 2.0, полностью используют возможности новых элементов управления Windows 95. В отличие от версии 1.0, Delphi 2.0 не поддерживает использование 16-разрядных управляющих директив VBX; вместо них есть закладка для настраиваемых OLE-компонентов. Можно также создать собственные модули OCX с нуля или образуя их в качестве подклассов существующих управляющих директив.
Хотя перенос приложений Delphi 1.0 в 32-разрядную версию 2.0 не сложен, могут возникнуть проблемы, если для каких-то модулей VBX не найдется соответствующей замены в OCX.
Помимо поддержки использования модулей OCX, в Delphi 2.0 значительно расширена поддержка OLE. Система может теперь управлять работой других приложений с помощью механизма автоматизации OLE. Теперь стало несложно написать в Delphi программу, которая запускает Word, создает в нем документ и вводит в него текст.
Но еще более впечатляет способность Delphi создать ваш собственный сервер автоматизации OLE, который может работать с любой программой, способной им управлять. Реализация такого сервера столь же проста, сколь и элегантна. Новая директива в Object Pascal позволяет создать внутри класса секцию автоматизации. Свойства и методы класса, содержащиеся в этой секции, становятся доступными управляющей программе.
Экспериментальное создание серверов OLE было слегка затруднено тем, что в бета-версии отсутствовала соответствующая документация. Поэтому мы смогли выполнить только простейшие серверы. Однако, когда будет выпущена коммерческая версия с исправленными ошибками, она может оказаться самым удобным средством создания OLE-серверов из тех, что создают 32-разрядный код.
Еще одним улучшением в Object Pascal является поддержка строк неограниченной длины и новых типов данных для денежных значений и вариантных переменных (вариантные переменные - это переменные, тип которых может изменяться в процессе выполнения программы - например, сначала в такой переменной может содержаться цепочка символов, а затем ей может быть присвоено целочисленное значение. Вариантные записи плохо согласуются с традиционной для Паскаля строгой типизацией, но облегчают программирование операций OLE). Поскольку Delphi работает в плоском 32-разрядном адресном пространстве, такие ограничения 16-разрядных приложений, как размер массивов, отсутствуют.
Delphi поддерживает новый механизм модулей данных (Data Module), играющий важную роль при упрятывании определений таблиц и отношений между ними. Эти модули исключают необходимость помещать все определения таблиц в одной форме в проекте и использовать во всех других модулях ссылки на эти определения. Еще одно преимущество использования модулей данных - введение понятия хранилища объектов. Специалист по базам данных создает сложную схему из таблиц и отношений между ними и помещает ее в хранилище объектов. Хранилище, содержащее формы и другие объекты, может находиться на сетевом диске и использоваться одновременно несколькими программистами. Хранилище объектов делает разработку в Delphi 2.0 значительно более удобным, чем раньше.
Некоторые новые чувствительные к данным (интеллектуальные) элементы управления облегчают написание программ, получающих данные из локальной базы данных или с сервера баз данных. Такие элементы управления могут получать данные из таблиц с помощью установки некоторых своих свойств, таких как имя таблицы и номер записи.
Новый инструмент Database Explorer позволяет легко просматривать и изменять таблицы и схему базы данных; той же цели служат многообъектная сетка, позволяющая показывать в панелях на экране различные типы данных, и новая 32-разрядная версия генератора отчетов ReportSmith. Delphi содержит 32-разрядную версию Borland Database Engine; удачно включена поддержка системы контроля версий Intersolv PVCS Version Manager, облегчающая совместную работу над проектом для групп программистов.
Программисты могут воспользоваться новыми инструментами SQL Explorer и Monitor для редактирования метаданных и оптимизации SQL-операций. Реализованы поддержка для кэшированных обновлений базы данных и дополнительный набор свободно распространяемых 32-разрядных драйверов для различных систем SQL. Borland также включил в пакет такие возможности, как локальное фильтрование запросов для минимизации сетевого трафика.
Обидно, что Borland оставила ReportSmith. В версии 1.0 это был единственный компонент, от которого действительно болела голова. Вероятно, коммерческая версия 2.0 будет гораздо лучше в плане производительности, однако чего действительно не хватает, так это хорошей системы генерации отчетов.
По всем признакам, Delphi 2.0 имеет шансы стать лучшим средством разработки. Остается дождаться выпуска коммерческой версии, в которой будут исправлены ошибки и отшлифованы неровности.
Delphi 2.0: цель - быстрая разработка
Для успеха этого продукта было бы достаточно только его скорости и усовершенствованной поддержки групповой разработки. Быстрый, с расширенными возможностями, но, тем не менее, знакомый пакет Delphi 2.0 позволяет воспользоваться всеми преимуществами Windows 95 при разработке баз данных и простых приложений. Никто не берется предсказать будущее, но судя по бета-версии, Borland выпустила превосходную систему быстрой разработки приложений.
Delphi 2.0
- Расширенная поддержка OLE
- Использование элементов управления Windows 95
- Чувствительные к данным (интеллектуальные) элементы управления данными
- Автоматические серверы OLE
- Поддержка PVCS
Краткие характеристики
Пакет Delphi Client/Server 2.0
Новая версия системы быстрой разработки программ, предназначенная для разработки программ для Windows NT и Windows 95, имеет все шансы установить новый стандарт богатства возможностей и простоты использования.
ЗА: Быстрый 32-разрядный оптимизирующий компилятор; строго объектно-ориентированный язык; поддержка многопоточного исполнения и Unicode; хранилище объектов для совместной работы; сильная поддержка OLE.
ПРОТИВ: Язык лишен возможностей современных объектно-ориентированных языков как множественного наследования; не поддерживается вложенность проектов; ориентирован на разработку программ только для Windows.