`

СПЕЦІАЛЬНІ
ПАРТНЕРИ
ПРОЕКТУ

Чи використовує ваша компанія ChatGPT в роботі?

BEST CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Embarcadero Delphi 2009: блаженны ждущие, ибо дождутся

Статья опубликована в №44 (661) от 18 ноября

+11
голос

Очередной релиз Delphi вышел под знаменами нового владельца – Embarcadero Technologies. Известия о переходе CodeGear в собственность этой компании были восприняты сторонниками средств разработки от Borland с вполне предсказуемыми опасениями за дальнейшую судьбу любимого продукта. Однако Embarcadero заявила о намерениях не только «сохранить и приумножить» былые достижения, но и вывести Delphi в высшую лигу инструментальных средств, а выпуск Delphi 2009 – видимо, первый шаг в этом направлении.

Embarcadero Delphi 2009 блаженны ждущие, ибо дождутся
Интерфейс остается практически неизменным уже несколько поколений IDE

Напомним, что в арсенале Borland/CodeGear находился достаточно разношерстный набор инструментальных средств для быстрой разработки приложений (RAD) под различные платформы – Java, .NET Framework, Win32 и даже Linux. Несмотря на то что основные усилия компании были брошены на освоение .NET Framework, особой популярностью пользовалась IDE Delphi, позволяющая создавать нативные приложения для Windows. Учитывая пожелания клиентов, в начале 2007 г. CodeGear выделила из общего пакета RAD Studio среду разработки Delphi для Win32 и выпустила ее на рынок с названием Delphi 2007 (ko-online.com.ua/30531). Этот релиз во многом оказался знаковым – наконец-то поклонники данной среды разработки получили отличный продукт, лишенный некоторых хронических недостатков, годами переходящих из версии в версию.

С выпуском Delphi 2009 в Embarcadero мудро воздержались от каких-либо неоднозначных нововведений, сфокусировавшись на возможностях, которые в результате анкетирования были определены как наиболее востребованные. Продолжая сложившуюся традицию, продукт поставляется в трех редакциях, отличающихся доступной функциональностью: Professional, Enterprise и Architect. Однако теперь несколько изменилось позиционирование, и вместо акцента на возможностях компания делает упор на предназначении.

Так, Professional позиционируется в качестве универсального средства разработки для ПО общего назначения, т. е. ориентируется на компании, создающие решения для массового рынка и не заинтересованные в доступе к сетевым СУБД. В свою очередь Enterprise, дополненная средствами доступа к СУБД (предлагаются провайдеры для девяти популярных систем), а также инструментами UML-моделирования, предназначена именно разработчикам приложений для СУБД. Наконец, редакция Architect поставляется в комплекте с известным продуктом корпоративного уровня Embarcadero ER/Studio и, соответственно, нацелена на клиентов, которым нужны расширенные возможности проектирования и сопровождения БД.

Системные требования для IDE практически не изменились, поддерживаются все современные ОС от Microsoft, начиная с Windows 2000 SP4 и заканчивая Windows Server 2008 (продукт может быть установлен как на клиентские, так и на серверные версии ОС). Среди пререквизитов следует отметить платформу .NET Framework 2.0, обеспечивающую работу самой IDE, но не приложений, создаваемых с ее помощью. Разворачиваться дистрибутив Delphi 2009 может как с DVD-диска, так и загрузкой только необходимых модулей через Интернет посредством инсталлятора InstallAware.

Нововведения в VCL

Embarcadero Delphi 2009 блаженны ждущие, ибо дождутся
VCL теперь позволяет конструировать интерфейс, аналогичный Microsoft Office 2007

Пожалуй, наиболее значимым и долгожданным нововведением является полная поддержка библиотекой VCL строк в формате Unicode (базовый тип string теперь реализован на основе нового типа UnicodeString, а char – на WideChar). Поскольку изменения затронули только базовые типы данных, используемые библиотекой, а сама она не подверглась каким-либо существенным модификациям, то преимущества от полной поддержки национальных алфавитов получат не только новые приложения, но и проекты, созданные в предыдущих версиях Delphi, – достаточно перекомпилировать их в Delphi 2009. К тому же разработчики IDE уверяют, что решению проблем совместимости было уделено особое внимание, и для большинства обычных приложений в процессе перехода на поддержку национальных алфавитов не должно возникнуть никаких трудностей (исключением могут быть фрагменты кода, основанные на специфических свойствах прежнего типа данных, например, предполагающих, что один символ занимает один байт памяти). К тому же поддержка всех прежних строковых типов данных сохранилась, а для работы с Unicode и выполнения преобразований между различными типами данных появились дополнительные функции и классы.

Также библиотека VCL была расширена новыми компонентами. В частности, добавилась возможность создавать приложения с использованием элемента интерфейса Ribbon, подобного тому, которым обладает Microsoft Office 2007. Delphi 2009 содержит собственную его реализацию, написанную на Object Pascal без применения сторонних библиотек, с полной поддержкой управляющего компонента TActionManager. Для работы с форматом PNG появился класс TPNGImage, полностью поддерживающийся компонентами TImage и TImageList, а также всеми элементами графического интерфейса, выводящими изображения: формами, панелями инструментов, кнопками, меню и т. д. Компонент TCategoryPanelGroup позволяет создавать интерфейсы на основе сворачиваемых панелей, подобно использующимся в Microsoft Outlook для области переходов. С помощью новых компонентов TBaloonHint и TButtonedEdit, соответственно, можно разрабатывать расширенные подсказки и области ввода текста, дополненные кнопками. Множеству мелких усовершенствований подверглись существующие компоненты, особое внимание было уделено более полной поддержке Windows Vista, вследствие чего количество их свойств и событий значительно увеличилось.

Обновленная IDE

Embarcadero Delphi 2009 блаженны ждущие, ибо дождутся
В обновленном окне свойств проекта можно задавать конфигурации сборок

А вот интерфейс и функциональность IDE, по сравнению с прежней версией, претерпели минимальное число усовершенствований. Наиболее значимые из них – это появившийся Resource Manager, предназначенный для управления программными ресурсами, компилируемыми в бинарный код (изображения, курсоры, шрифты, строки и т. д.), а также обновленное окно свойств проекта с расширенными возможностями управления конфигурациями сборок (Build Configurations), посредством которых можно создать их наборы, используемые для различных целей: тестирования, отладки, передачи заказчику. Они могут быть сохранены в файлах и наследоваться для сложных проектов, в которых генерируется множество исполняемых файлов и динамически подключаемых библиотек.

Обновленный Class Explorer обзавелся расширенными возможностями навигации по иерархии классов приложения, в нем поддерживается управление классами и даже формирование собственной библиотеки классов.

Наряду с поддержкой Unicode в VCL среда разработки дополнена более совершенными инструментами локализации приложений – Integrated Translation Environment (ITE) и External Translation Manager (ETM). Первый встроен в IDE и предназначен для формирования ресурсных DLL, содержащих диалоговые окна и строки, требующие локализации (поддерживается как ручной, так и автоматический режим работы – в нем осуществляется сканирование проекта и извлечение подлежащих переводу ресурсов). Второй представляет собой автономное приложение, которое может быть предоставлено профессиональным переводчикам для работы с ресурсными файлами.

Дополнительно в Delphi 2009 обновлена поддержка COM и ActiveX. На основании спецификаций языка Microsoft IDL был создан язык Reduced IDL. Его использование позволило реализовать определение COM и ActiveX-объектов непосредственно в текстовом виде в исходном коде и упразднило потребность в бинарных .TLB-файлах для сборки проекта. Это нововведение, несомненно, будет по заслугам оценено коллективами разработчиков, применяющими технологии COM/ActiveX и сталкивающимися с необходимостью управления изменениями файлов описаний объектов в системе контроля версий – ранее это было весьма трудоемкой задачей.

Усовершенствованный язык

Embarcadero Delphi 2009 блаженны ждущие, ибо дождутся
В редакции Architect поставляется Embarcadero ER/Studio – мощный инструмент моделирования данных

Продолжилось совершенствование и самого языка Delphi (так в Borland назвали свой диалект Object Pascal), вот уже несколько поколений идущий по пути заимствования нововведений, которыми Microsoft одаряет C#. На этот раз Delphi обзавелся поддержкой обобщений и анонимных методов.

Обобщения (другое название – параметризованные классы) представляют собой классы, позволяющие манипулировать данными, тип которых не известен на момент декларации, а определяется при его создании. Типичный сценарий использования обобщений состоит в построении некоего класса-контейнера, например списка. Он может быть связан с различными типами данных и дает возможность манипулировать ими с соблюдением строгой типизации, что в других случаях обычно невозможно, в частности, если применяется класс-контейнер на основе указателей. Наряду с языковой поддержкой обобщений в стандартной библиотеке классов Delphi 2009 появились обобщения, реализующие динамические структуры данных, к примеру, различные списки.

Анонимные методы – конструкция языка, позволяющая передавать блоки кода в качестве параметров и, соответственно, исполнять их, не привязываясь к конкретному методу. Фактически они представляют собой методы (процедуры или функции в терминах языка Delphi), которые могут быть присвоены переменным и вызваны через имена этих переменных. С помощью анонимных методов можно заметно упростить создание сложных конструкций кода, выполняющихся в зависимости от множества различных условий.

Улучшенная архитектура работы с данными

Традиционная для Delphi архитектура работы с многоуровневыми данными DataSnap (в ранних версиях Delphi известная как MIDAS) в текущем релизе была подвергнута существенным усовершенствованиям. Самое значительное из них состоит в том, что если ранее DataSnap основывалась на технологии COM, то в текущей версии ее заменили более легковесной, получившей название Server Methods. Для разработчиков Server Methods представляют собой методы, которые исполняются на стороне сервера приложений, однако способ их использования не отличается от локальных, исполняющихся в клиентском приложении, – всю заботу о вызове и передаче параметров берет на себя DataSnap. В качестве последних поддерживаются все типы dbExpress, включая строки, наборы данных и OLEVariant. При этом технология остается совместимой с серверами, основанными на ее предыдущей версии.

Embarcadero ER/Studio Developer Edition

Этот совершенно новый компонент Delphi, доступный только в редакции Architect, достоин особого внимания. По сути, он относится к инструментам моделирования реляционных данных, которые более востребованы специалистами в области БД, чем традиционными разработчиками ПО. Впрочем, представить корпоративную информационную систему без СУБД невозможно, а редакция Architect позиционируется именно в качестве инструмента для создания подобных систем.

На текущий момент актуальной версией ER/Studio является 7.6.1, выпущенная практически одновременно с Delphi 2009. Помимо поставляемой с Delphi редакции Developer, существуют еще Standard и Enterprise, обладающие более широкими возможностями (хотя различия, главным образом, кроются в числе поддерживаемых СУБД и дополнительных компонентах, но не в основной функциональности, которая у всех одинакова).

Среди прочего ER/Studio обеспечивает создание моделей данных в различных нотациях (IDEF1X, IE), обратный инжиниринг существующих БД, обеспечение полного цикла моделирования данных – от построения логической модели до реализации и оптимизации физической. Хотя ER/Studio Developer Edition ограничивается поддержкой только десятка наиболее распространенных СУБД, допускается модернизация до редакций Standard или Enterprise, что даст возможность использовать практически все хоть сколь-нибудь известные СУБД.

Также для ER/Studio создан специальный компонент ER/Stu-dio Repository, предназначенный для организации совместной работы коллективов разработчиков. Кроме того, на сайте embarcadero.com доступны для загрузки различные расширения, в том числе и шаблонные модели данных, с помощью которых можно значительно сократить затраты на создание БД, если для них применимы стандартные решения.

Заключение

Подводя итог краткому знакомству с Delphi 2009, можно сказать, что в целом продукт производит весьма приятное впечатление, что в совокупности со схожим выводом по предыдущей версии позволяет уже говорить о некой положительной тенденции. Несмотря на то что текущий релиз не обладает революционной новизной, он содержит некоторые долгожданные функции, в частности, полную поддержку национальных алфавитов в VCL за счет использования Unicode. Вместе с тем создатели Delphi, вероятно, помня о прежних просчетах, не поспешили со скорым выпуском, а постарались сделать качественный и надежный продукт, способный без замечаний справиться со своими задачами. В результате очередная версия Delphi удалась, и к ней переходит титул «самой лучшей Delphi за всю историю», ранее присужденный нами Delphi 2007. Хотя, наверное, следует добавить и небольшую ложку дегтя в эту бочку меда: все-таки скорость появления ожидаемых функций в Delphi оставляет желать лучшего. К примеру, мы так до сих пор и не увидели 64-битового компилятора, потребность в котором уже не ограничивается исключительно серверными решениями, – удешевление оборудования постепенно делает все более популярными и клиентские 64-битовые ОС.

С другой стороны, такому продукту, как Delphi, компилирующему в нативный код, играет на руку то, что традиционная Win32-платформа, вопреки ожиданиям многих участников рынка ПО (включая, вероятно, и самого ее создателя), все еще сохраняет свою актуальность. Тем более что «подмога» подчас приходит с совершенно неожиданных сторон. Скажем, для нетбуков, этих маломощных по современным меркам устройств, оснащенных слабыми процессорами и сравнительно небольшим объемом ОЗУ, нативные Win32-программы выглядят куда привлекательнее требовательных к ресурсам приложений для .NET Framework. Не слишком удачная попытка Microsoft вытеснить Windows XP с помощью Windows Vista также послужила сохранению интереса к нативным приложениям, и Windows 7, по всей видимости, не предложит ничего радикального в данной области. Более того, Microsoft обещает в самое ближайшее время обеспечить полную поддержку Win32-кода инфраструктурой Windows Azure.

Так или иначе, но нельзя не отметить, что Embarcadero с весьма похвальным усердием взялась за возрождение Delphi, и совместно с грядущим обновлением RAD Studio нас ждет даже более интригующий продукт – Delphi Prism, который, при условии надлежащей реализации, может действительно совершить небольшую революцию, добавив реальную кросс-платформенность в программирование для .NET Framework.

Сайт автора: koldovsky.com

Ready, set, buy! Посібник для початківців - як придбати Copilot для Microsoft 365

+11
голос

Напечатать Отправить другу

Читайте также

 

Ukraine

 

  •  Home  •  Ринок  •  IТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Мережі  •  Безпека  •  Наука  •  IoT