CodeGear RAD Studio 2009

Призрак былой славы Delphi и C++ Builder

Не так давно компания Embarcadero Technologies выпустила новую версию среды разработки приложений для Windows и .NET - RAD Studio 2009. По традиции, "Компьютерные вести" рассказывают о ней как можно подробнее.


Вздохи о былом величии

Да, было время, когда программисты на Delphi ценились на вес золота и могли гнуть пальцы не хуже, чем их коллеги, пишущие на C++ или Java. Сейчас уже ситуация изменилась: в базах данных сайтов с вакансиями Delphi-программистов не сыщешь днём с огнём, а самым популярным способом применения этой среды разработки стало обучение программированию студентов младших курсов.

В общем-то, причины упадка Delphi и C++ Builder, по сравнению с моментом их пиковой популярности, более чем просты. Из-за того, что компьютеры стали мощнее, отпала необходимость в компиляции программ непосредственно в сравнительно быстрые исполняемые файлы операционных систем. Кроме того, для разработки действительно крупных приложений, включающих распределённые вычисления, технологии, используемые в Delphi и C++ Builder, не слишком подходили (да и сейчас не очень подходят). Конечно, нельзя сказать, что такие приложения создавать с их помощью совсем невозможно, однако, по сравнению с теми же Enterprise Java Beans, их возможности кажутся далеко не блестящими. Для разработки web-приложений компания Borland тоже не смогла предложить какую-нибудь технологию, столь же гибкую и удобную, как ASP.NET или web-технологии для Java. То есть, если подвести итог всем этим причинам, то упадок продуктов для разработки приложений, созданных когда-то компанией Borland, объясняется тем, что они так и остались просто инструментами, прилагающимися к платформе Windows - собственную платформу компания Borland так и не смогла предложить.

Тем не менее, пользователи Delphi и C++ Builder наверняка верят в то, что праздник придёт и на их улицу. И я тоже на это искренне надеюсь. Поводом для этого служит тот факт, что легендарные среды разработки наконец-то выползли из-под крылышка Borland, став частью продуктовой линейки не слишком хорошо известной в наших краях фирмы Embarcadero Technologies. Будем верить, что она отнесётся не так халатно к своим программным продуктам, как отнеслась в своё время Borland, и их ждёт новый взлёт.

Пока же давайте внимательно посмотрим на "пробу пера" Embarcadero Technologies в области создания или, вернее, совершенствования сред разработки Windows-приложений. Хотя, конечно, 2009-е версии Delphi и C++ Builder в большей степени можно считать ещё Borland'овскими, но взглянуть на них пристальнее всё равно будет более чем интересно.


Кто на новенького?

Что ж, давайте посмотрим, что нового появилось в новой версии RAD Studio - продукта, объединяющего в себе среды разработки Delphi и C++ Builder.

Начнём, пожалуй, с установщика. Он в этот раз вышел более удобным, чем в прошлый, поскольку с самого начала с сайта codegear.com можно было скачать ISO-образ, в котором, помимо самой RAD Studio 2009, есть ER/Studio Developer Edition, Interbase 2009 Developer, ODBC-драйвер для Interbase, Remote Debugger и InstallAware Express. Все эти программные продукты, конечно, тоже не будут вредны для разработчиков, однако тот факт, что документацию к Delphi и C++ Builder придётся устанавливать отдельно, вряд ли может кого бы то ни было обрадовать. Да и сам установщик не стал быстрее, что тоже не есть хорошо.

Внешний вид среды разработки, к счастью, не претерпел существенных изменений - всё-таки не зря Delphi разрабатывают уже около пятнадцати лет. Зато внутренних изменений в RAD Studio 2009 просто пруд пруди, и сейчас мы обо всех них поговорим.

В RAD Studio 2009 вы не найдёте версии Delphi для .NET или мертворождённого C# Builder'а. Через столько лет после их выпуска разработчики наконец-то узнали о том, что ими для разработки .NET-приложений почти никто не пользуется, предпочитая по вполне понятным причинам Microsoft Visual Studio. В общем-то, исключение этих двух составляющих из RAD Studio можно только приветствовать.

В Delphi 2009, по сравнению с Delphi 2007, довольно существенно поменялся сам язык. В нём появилась поддержка двух крайне полезных при программировании вещей: шаблонов и анонимных методов. Анонимные методы - это, фактически, поддержка работы с процедурами и функциями (в терминах Delphi) как с отдельными типами данных, полностью равноправными с другими типами. Теперь можно создавать переменные процедурные типы, присваивать им прямо в коде значения конкретных функций и делать с процедурами и функциями ещё много других интересных вещей. Это, фактически, поддержка лямбда-выражений в Delphi. Что касается шаблонов, то здесь вряд ли нужно что-то объяснять подробно, поскольку эта концепция давно не нова и активно используется при программировании на Java, C# и ряде других языков. Шаблоны особенно удобны при работе с коллекциями каких-либо объектов: списками, очередями, деревьями, хэш-таблицами, и т.д. и т.п.

В общем-то, можно сказать, что от первоначальной простоты Паскаля, ради которой он и задумывался, осталось уже не так уж и много. С другой стороны, время диктует свои условия. Так что, наверное, то, что Delphi наконец-то сравнялся с C++ или C# по мощности объектно-ориентированных конструкций, скорее плюс, нежели минус.

Что касается C++ Builder, то в нём языковых изменений, естественно, меньше, потому что нужно всё-таки поддерживать стандарты. Вот поддержка очередного из них, C++0x, и реализована.


Ах, юникод, юникод...

Не обошлась, конечно же, без изменений и библиотека Visual Components Library (VCL), которая привлекает разработчиков в куда большей степени, чем всё остальное вместе взятое в Delphi и C++ Builder. Самым главным новшеством в ней стала поддержка юникода всеми стандартными контролами, а также поголовная замена ANSI-типа строк на юникодовый во всех мыслимых и немыслимых классах, так или иначе работающих со строками.

Поддержка юникода уже давным-давно фигурировала в разных роадмапах для Delphi, и в опросах пользователей, которые проводила Borland, в ответ на вопрос, чего не хватает пользователям Delphi и C++ Builder, ответ "поддержка юникода" долгое время был самым популярным. Что ж, вот, наконец, мы с вами её и дождались. Теперь с помощью Delphi можно, не прибегая к разным извращениям, создавать приложения, по-настоящему хорошо работающие с самыми разными языками - от испанского до китайского, от финского до вьетнамского. Для поддержки юникода был введён специальный класс TEncoding, который позволяет работать с различными кодировками текста, и без особых сложностей преобразовывать строки в старых кодировках в юникод. Базовые типы строк и символов тоже по умолчанию стали юникодовыми, а для того, чтобы старые приложения правильным образом смогли скомпилироваться в новых версиях Delphi и C++ Builder, все объявления string'ов и char'ов нужно заменить, соответственно, на AnsiString'и и AnsiChar'ы.

Как остроумно заметили некоторые обозреватели, писавшие о новых версиях Delphi и C++ Builder, компания-производитель рассчитывает с помощью полноценной поддержки юникода поднять продажи своих продуктов в неанглоязычных странах, так как на англоязычные надежда слабая из-за не слишком высокой популярности в них Delphi и C++ Builder. Что ж, это мнение звучит вполне правдоподобно, и, вероятно, именно ставка на неанглоязычные страны стала решающим фактором, определившим реализацию поддержки юникода в новой версии RAD Studio.

Не обошла библиотеку визуальных компонентов Delphi и C++ Builder и всеобщая мода на интерфейсы в стиле Microsoft Office 2007. Теперь в RAD Studio 2009 есть компонент TRibbon, позволяющий добавить в приложение панель инструментов в стиле Office 2007. На панели, помимо кнопок, можно добавлять однострочные текстовые поля ввода и выпадающие списки ("комбобоксы"). Из этого всего действительно можно сделать полноценную панель инструментов в стиле Office 2007, однако над тем, чтобы остальные элементы интерфейса в программе соответствовали этому стилю, разработчику придётся потрудиться самостоятельно. Впрочем, разработчики RAD Studio 2009 уверяют пользователей своего детища в том, что они придали "вистовый" вид многим визуальным компонентам, так что, на самом деле, обновить внешний вид ваших приложений, созданных с использованием старых версий Delphi или C++ Builder, будет не так уж и сложно.

Нельзя не отметить и некоторые изменения в самом IDE RAD Studio 2009. Во-первых, самое важное и приятное - изменяемые размеры многих диалогов, раньше имевших фиксированные границы. Во-вторых, по отзывам тех, кто работал с новой версией RAD Studio, стал куда более понятным и удобным мастер создания COM-объектов, а также значительно улучшилась ситуация с разными видами билдов и их конфигурированием. Конечно, также разработчики из CodeGear улучшили ситуацию с ошибками, которыми изобиловала среда Delphi 2007, пусть и не слишком критичными, но всё же довольно досадными.

Ну и, наконец, стоит сказать несколько слов о разработке AJAX-приложений в RAD Studio 2009. Да-да, новая версия среды разработки делает некоторые подвижки в сторону Web'а, ставшего сейчас самой выгодной и вообще приятной во всех отношениях площадкой для размещения приложений. Для создания Web 2.0-приложений в RAD Studio 2009 предлагается набор компонентов с поддержкой Microsoft Silverlight 2.0, которые, по словам CodeGear, как две капли воды похожи на обычные VCL-компоненты для Windows-приложений. Хотя поддержка web-приложений присутствует в Delphi давно, в новой версии сделан серьёзный шаг в сторону её дальнейшего развития, что, я так думаю, не может не радовать тех разработчиков, которые так или иначе связаны с созданием web-приложений и считают Delphi и C++ Builder хорошими инструментами разработки.


Подытожим сказанное

Что ж, вот такие вот дела с этой новой версией среды, объединившей в себе два легендарных продукта Borland. Теперь пора подвести итог всему, что сказано о ней выше.

В целом, впечатление приятное. Дело сдвинулось с мёртвой точки, и в RAD Studio 2009 уже, к счастью, нет балласта в виде почти никому не нужного .NET-направления. Конечно, коренную проблему отсутствия платформы как таковой она для Embarcadero не решает, но это уже их проблемы, а не наши. Среда разработки стала лучше, причём заметно лучше, равно как и язык программирования Delphi. И, думаю, это не может не радовать. Динамика развития однозначно положительная, и отраден тот факт, что не забыты и web-разработчики. Так что переходить на новую версию RAD Studio (особенно с 2007-й или 2006-й версий) можно и нужно, она действительно того стоит.

Вадим СТАНКЕВИЧ

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

Номер: 

38 за 2008 год

Рубрика: 

Software
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!