|
|
|||||||||||||||||||||||||||||
|
О будущем DelphiИсточник: КомпьютерПресс, 12/2004 Сергей Орлик, Наталия Елманова
Оглавление
Borland Delphi - одно из самых популярных в нашей стране средств разработки приложений и продолжает оставаться таковым уже без малого десять лет. Дальнейшая судьба этого продукта волнует многих разработчиков - именно этой теме и посвящена настоящая статья. Почти десятилетнее пребывание на IT-рынке - срок по нынешним меркам почти рекордный. Не так просто выдержать конкуренцию со стороны более новых инструментов, обеспечивая, с одной стороны, совместимость со старыми версиями, а с другой - качественную поддержку новых технологий. Эти два требования нередко вступают в противоречие друг с другом, ставя производителей средств разработки перед нелегким выбором - продолжить ли выпуск той или иной линейки продуктов либо создать совершенно новое средство, обеспечив пользователей снятого с производства продукта средствами миграции и технической поддержкой. Принципиально новый продукт, получивший имя Delphi, появился в 1995 году и сразу же привлек внимание разработчиков всего мира своими невиданными по тем временам возможностями, простотой и удобством создания приложений. Сейчас, конечно, такими возможностями обладают и другие средства разработки, но и количество пользователей Delphi по-прежнему велико. Выпуск в конце прошлого года восьмой версии этого продукта стал отражением концептуального подхода компании Borland к созданию средств разработки для платформ Microsoft Windows и .NET. Как результат, многие разработчики задумались о будущем разработки для Win32. Дальнейшая судьба Delphi и путь развития этого продукта стали ясны после появления очередной его версии - Delphi 2005. Теперь стало очевидно, для каких задач предназначен этот продукт и какие платформы он поддерживает, да и новшеств, подчас уникальных, в нем более чем достаточно. Delphi 2005 по своей сути стал новым поколением Delphi и, как это уже случилось в 1995 году, задает новый уровень интегрированности и широты функциональных возможностей современных инструментальных средств разработки приложений. А теперь рассмотрим основные новшества Delphi 2005, начав с поддерживаемых платформ, языков программирования и компиляторов. Поддерживаемые платформыВ комплект поставки Delphi 8 - средства, предназначенного исключительно для платформы Microsoft .NET, - входил экземпляр Delphi 7 для разработчиков, которым нужно было создавать приложения для платформы Win32. Те, кто помнит, как в комплект поставки 32-разрядного средства разработки Delphi 2 включили 16-разрядную версию Delphi 1 (после этого никаких 16-разрядных версий Delphi уже не выпускалось), вполне могли предположить, что версий Delphi для Win32 больше не предвидится, однако все оказалось совсем не так. Сегодня потребность в создании приложений для платформы Win32 еще весьма велика, поэтому Delphi 2005 предоставляет своим пользователям возможность создавать приложения и для .NET Framework, и для платформы Win32. При этом платформа .NET поддерживается как для языка Delphi, библиотек VCL .NET и Windows Forms/Web Forms, так и для C# (Windows Forms/Web Forms), что является первым шагом в предоставлении разработчикам многоязыковых инструментальных средств Borland. Приложения для обеих платформ можно создавать внутри единой среды разработки. И это вполне понятно, так как многие разработчики консервативны в своих привычках, особенно когда речь идет об организации среды разработки. Разработчики, которые создают VCL-приложения для Win32 и .NET, могут использовать "классический" вариант размещения инструментов среды с "плавающим" дизайнером форм и модулей данных (рис. 1) наравне с новой "многостраничной" организацией среды разработки, знакомой многим по таким продуктам, как Delphi 8, JBuilder и Visual Studio .NET.
Рис. 1. "Классический" режим работы среды Delphi 2005 По поводу мастеров, присутствующих в среде и предназначенных для упрощения создания приложений для обеих платформ, отметим изменения в средствах импорта в проекты описаний объектов и событий COM+, в средствах создания удаленных модулей данных, библиотек типов, элементов управления ActiveX. Кроме того, в среде Delphi есть инструменты для импорта компонентов .NET в проекты, предназначенные для платформы Win32. К тому же приложения, создаваемые с использованием VCL .NET, могут создаваться и с применением компонентов Windows Forms, для чего в среде Delphi также предусмотрен специальный мастер. Если говорить о полноте набора инструментов, то среда разработки Delphi 2005 объединяет комплекс средств Delphi 7, Delphi 8, C#Builder и предоставляет ряд таких новых функциональных модулей, как встроенный в среду клиент средства конфигурационного управления StarTeam для обеспечения командной работы, мастер интеграции .NET и J2EE/CORBA на основе Janeva, рефакторинг, блочное тестирование на основе библиотеки классов DUnit (для Win32) и NUnit (.NET), а также многие другие инструменты, качественно повышающие продуктивность разработки. Встроенное в среду Delphi ядро средств проектирования Borland Together (рис. 2) обеспечивает визуализацию кода на основе UML и конструирование приложений на основе UML-моделей с использованием специального комплекса средств Borland ECO II (Enterprise Core Objects), первая версия которых была включена в C#Builder и Delphi 8. Важной особенностью ECO II является возможность создания ECO-приложений для существующих баз данных на основе отображения классов и структуры данных с использованием XML-описателей.
Рис. 2. UML-визуализация в среде Delphi 2005 на основе ядра Borland Together Язык и компиляторыРазработчикам, уже имевшим дело с платформой Microsoft .NET и языком C#, будет интересно узнать, что с помощью Delphi 2005 можно создавать .NET-приложения и на языке C#. Таким образом, Delphi 2005 теперь включает всю функциональность другого средства разработки компании Borland - C#Builder, выпущенного примерно полтора года назад. Из изменений в языке Delphi отметим появление синтаксической конструкции for..in..do (именно это мне всегда нравилось в Visual Basic), например: var Lines: TStrings; S: string; ... . for s in Lines do ListBox1.Items.Add(s); Компилятор Delphi 2005 поддерживает файлы в кодировках Unicode и UTF-8. Более того, символы Unicode можно использовать в идентификаторах переменных и импортировать из сборок .NET, так что любители именовать переменные по-русски могут теперь позволить себе это удовольствие. Отладка и рефакторингИз средств, повышающих продуктивность разработки, следует в первую очередь назвать средства отладки и инструменты рефакторинга кода. В Delphi 2005 отлаживать код для обеих платформ можно одновременно, поскольку отлаживаемый код .NET существует внутри обычного процесса Windows. Кроме того, можно редактировать код прямо в процессе отладки и регистрировать в среде разработки несколько отладчиков. Впечатляют и средства рефакторинга, предоставленные данным продуктом. Так, если нужно переименовать переменную, класс, метод, то можно выделить фрагмент кода и начать переименовывать - и тогда во всем выделенном фрагменте произойдет соответствующее переименование всех ссылок (рис. 3).
Рис. 3. Переименование переменной средствами рефакторинга Извлечение методов - еще один из поддерживаемых Delphi 2005 механизмов рефакторинга. Средства извлечения методов этого инструмента позволяют не только создавать новые методы на основе существующих, но и автоматически создавать параметры методов, генерировать локальные переменные, хранить историю изменений (рис. 4).
Рис. 4. Отображение истории изменений кода с помощью средств рефакторинга XML DocСтоит особо отметить и интерактивную справку. Казалось бы, что нового можно изобрести в деле создания справок Windows? Но в Delphi 2005 справка появляется прямо в редакторе кода, причем тогда, когда набирается имя класса. Кстати, авторы кода могут создавать такую справку сами, так как комментарии, начинающиеся с "///", сохраняются компилятором в отдельном XML-файле. ASP .NETОпределенные изменения претерпели средства создания приложений ASP .NET, например инструменты редактирования кода и HTML-тэгов, средства завершения кода для каскадных таблиц стилей и инструменты форматирования кода (рис. 5). Мастер развертывания приложений Deployment manager wizard, упрощающий развертывание и внедрение приложений данного типа, также является нововведением, характерным для данной версии (рис. 6).
Рис. 5. Delphi 2005 поддерживает визуальную разработку ASP .NET и включает Web-компоненты для работы с базами данных - Borland DB Web
Рис. 6. Мастер развертывания ASP .NET Поддержка баз данныхИзменения в технологии Borland Data Providers включают поддержку манипуляции метаданными. Например, с помощью этого механизма доступа к данным теперь можно выполнять DDL-операторы для создания и удаления индексов, таблиц, представлений, осуществлять автоматическое обновление, в том числе и данных, полученных в результате запроса к нескольким таблицам. Кроме того, внесены и изменения в сами провайдеры данных BDP - теперь ими поддерживаются данные типа Boolean в Interbase, пакеты Oracle, таблицы с именами, содержащими не только английские буквы. Появилась и поддержка последних версий серверов компании Sybase. Из средств построения распределенных приложений, работающих с базами данных, назовем технологию DataRemoting, реализованную с учетом огромного опыта, накопленного компанией со времени использования технологии Midas/DataSnap, появившейся еще в период Delphi 3. Похоже, эта реализация удаленного доступа к данным значительно превосходит своих предшественников.
Средство навигации по базам данных DataExplorer - предмет отдельного обсуждения. Этот инструмент позволяет осуществлять миграцию данных из одной базы данных в другую, переносить мышью имя хранимой процедуры в среду разработки не только с автоматической генерацией компонентов, но и с созданием их параметров. Также отметим новые средства создания типизированных клиентских наборов данных для .NET (Typed datasets). Эти наборы данных можно компилировать в отдельные сборки, поддерживать наборы данных, получаемые от Web-сервисов, редактировать в таких наборах данных связи и таблицы. Технология dbExpress также усовершенствована - внесены улучшения в редактор SQL-запросов, повышена скорость работы некоторых компонентов, реализующих эту технологию, произошли изменения и в драйверах. Очень важно, что в Delphi 2005 вновь появилась поддержка ADO. Пользователям Delphi 8 она была недоступна в принципе, что удручало всех разработчиков, использовавших технологию ADO в своих прежних проектах. Казалось, что обновить эти проекты уже никогда не удастся, что напрочь уничтожало всякое желание взять Delphi в руки еще раз, но теперь такие проекты можно перенести в Delphi 2005 (по крайней мере, так говорят в Borland). Правда, это именно ADO (c неуправляемым кодом, OLEDB-провайдерами и прочими атрибутами указанной технологии), а не ADO .NET. Enterprise Core ObjectsОсобо стоит сказать о поддержке UML-моделирования. Так, ECO теперь поддерживает проекты ASP .NET и Web-сервисы (и есть соответствующие шаблоны приложений); в среде имеется инструмент, позволяющий создать модель на основе схемы базы данных и начать с ней работать уже как с UML-моделью; появились средства автокомпиляции и средства помощи, напоминающие, что уже сделано и что еще нужно сделать в приложении. А уж изменений в ECO run-time более чем достаточно - от повышающих скорость выполнения приложений и генерации форм до упрощающих разрешение конфликтов. Интеграция с J2EEИ наконец, то, чего нет у других производителей средств разработки, - интеграция с J2EE/EJB с применением средства Borand Janeva. Создание клиентов для EJB можно осуществлять с помощью Delphi и C#, можно извлекать один EJB из целого архива, можно разбирать автоматически описания Deployment Descriptors для разных серверов приложений (Borland Enterprise Servers, BEA Weblogic или IBM Websphere), можно генерировать клиентские сборки .NET. При этом Janeva позволяет не только создавать клиентские приложения для CORBA-служб на платформе .NET, но и разрабатывать собственные CORBA-серверы. Полезные мелочиВ Delphi 2005 наличествуют средства размещения компонентов на форме путем перетаскивания мышью (причем для обеих платформ); появилось несколько новых визуальных компонентов типа TButtonGroup и TCategoryButtons; произошли изменения во внешнем виде и в функциональности некоторых окон среды разработки, например, инспектора объектов, панели инструментов, менеджера проектов. Delphi 2005 поддерживает управление версиями и хранение истории изменений, содержит встроенные средства интеграции со StarTeam, позволяющие работать и с различными версиям файлов, и с запросами на изменения (change requests, включая отчеты об ошибках), и с требованиями и задачами (tasks). Кроме того, пользователи Delphi 2005 Enterprise и Architect получают в составе продукта полнофункциональную редакцию StarTeam Standard. ЗаключениеВ настоящей статье мы обсудили некоторые особенности Delphi 2005, такие как поддержка двух языков программирования и двух платформ, изменения в языке Delphi и в средствах отладки, новые средства рефакторинга, изменения в средствах работы с базами данных и создания приложений ASP .NET, в инструментах интеграции с приложениями J2EE, а также новшества в технологии Enterprise Core Objects. Нововведений в Delphi 2005, на наш взгляд, вполне достаточно, чтобы обратить на этот продукт самое серьезное внимание. Ссылки по теме
|
|