Borland Delphi 8 для Microsoft .NET Framework
Особенности Delphi 8 для Microsoft .NET Framework
Доступ к данным в Delphi для Microsoft .NET
Поддержка жизненного цикла приложений
Разработка, определяемая проектированием
Интеграция со средствами управления требованиями
Средства оптимизации приложений
Средства управления изменениями
В конце прошлого года корпорация Borland анонсировала новое средство разработки .NET-приложений — Borland Delphi 8 для Microsoft .NET Framework. Назначение этого продукта — предоставить пользователям Delphi возможность создавать приложения для платформы .NET Framework, а также переносить на эту платформу унаследованный код, созданный с помощью предыдущих версий Delphi для 32-разрядных версий Windows. Настоящая статья посвящена наиболее важным особенностям данного продукта.
По данным аналитической фирмы Gartner Group, к середине 2004 года большинство организаций должны предпринять значительные усилия по переносу на Microsoft .NET Framework приложений, созданных для платформы Windows и Component Object Model (COM), с расчетом на эксплуатацию после 2007 года.
Введениe
выпуске Borland Delphi 8 для Microsoft .NET Framework было официально объявлено 3 ноября прошедшего года. Не будет преувеличением сказать, что этого объявления разработчики ждали долго — платформа Microsoft .NET существует уже достаточно давно и предоставляемые ею преимущества уже не вызывают особых сомнений и споров ни у IT-менеджеров, ни у разработчиков. Популярность Microsoft .NET и связанных с этой платформой технологий растет, ее поддержка появляется во многих других программных продуктах, и до недавнего времени разработчикам и архитекторам, работающим в компаниях, где традиционно применялась Delphi, приходилось выбирать между отказом от применения Microsoft .NET Framework и сменой средства разработки на Visual Studio .NET. Теперь ситуация изменилась — у разработчиков и руководителей проектов появилась возможность сменить платформу на технологически более совершенную, не отказываясь от накопленных знаний и созданного ранее кода.
Следует отметить, что именно сейчас во многих компаниях, специализирующихся на разработке приложений, происходит процесс принятия серьезных решений, связанных с выбором базовых технологий и платформ для будущих проектов. На принятие таких решений влияют не только технологические преимущества той или иной платформы, но и многие другие факторы, такие как наличие большого количества унаследованного кода, который хотелось бы использовать в будущих проектах, инвестиции в обучение разработчиков и архитекторов, наличие определенного объема знаний и опыта. Поскольку в России пользователей Delphi очень много, появление Delphi 8 для Microsoft .NET Framework способно в определенной степени повлиять на решение в пользу .NET в тех компаниях, для которых Delphi является основным средством разработки.
Собственно, компилятор Delphi для Microsoft .NET Framework был доступен разработчикам для изучения с момента выхода предыдущей версии Delphi — его ознакомительная версия была включена в комплект поставки Delphi 7. Впрочем, «голый» компилятор сегодня представляет скорее академический, нежели практический интерес: компиляторы без среды разработки, библиотеки классов и средств обновления унаследованного кода вышли из моды еще в начале 90-х годов. Теперь наконец все вышеуказанное создано и доступно. Но, как мы увидим далее, этим компания Borland не ограничилась.
Особенности Delphi 8 для Microsoft .NET Framework
elphi 8 для Microsoft .NET Framework выпускается в трех редакциях — Professional, Enterprise и Architect. Перечисляя особенности каждого продукта, мы постараемся упоминать, в каких редакциях они доступны.
Все редакции новой версии Delphi обладают полноценной поддержкой всех классов .NET Framework Class Library. Кроме того, на основе классов .NET Framework реализована и .NET-версия библиотеки VCL (Visual Component Library), поэтому перенос унаследованного кода на новую платформу в большинстве случаев не должен вызывать особых проблем.
В числе того, что не будет перенесено на платформу .NET, сотрудники Borland назвали компоненты Decision Cube и высказали некоторые сомнения по поводу компонентов TeeChart (последних, если их не окажется в новой версии, будет, наверное, жаль, но, с другой стороны, выпускающая их испанская компания Steema Software процветает и, естественно, .NET-версии этих компонентов производит — в конце концов эти компоненты можно приобрести абсолютно независимо от Delphi).
Приложения Windows Forms
С помощью всех редакций Delphi 8 для Microsoft .NET можно создавать приложения Windows Forms (GUI-приложения для платформы Microsoft .NET) с применением как классов .NET Framework Class Library, так и классов .NET-версии библиотеки VCL.
Если первым способом создания приложений можно воспользоваться при работе над новыми проектами, то второй позволяет перенести унаследованный код для платформы Win32 на платформу Microsoft .NET. Во многих случаях это удастся осуществить без особых переделок — в состав продукта входят .NET-версии визуальных VCL-компонентов, компонентов dbExpress, клиентских компонентов MIDAS, Interbase Express и даже Borland Database Engine (BDE) для доступа к данным dBase и Paradox.
Доступ к данным в Delphi для Microsoft .NET
Все редакции Delphi 8 позволяют создавать приложения, применяющие для доступа к данным технологию ADO .NET. В состав редакций Enterprise и Architect входят библиотеки Borland Data Provider для ADO .NET, предоставляющие доступ к наиболее популярным серверным СУБД и позволяющие упростить перенос приложений с одной СУБД на другую. Кроме того, для всех редакций Delphi 8 доступны библиотеки Borland Data Provider для ADO .NET для доступа к СУБД Borland Interbase, Microsoft Access и Microsoft Desktop Engine.
В комплект поставки всех редакций Delphi 8 входят также версии Developer Edition СУБД Microsoft SQL Server, Borland InterBase, IBM DB2, предназначенные для разработки приложений, использующих указанные СУБД.
Приложения ASP .NET
Говоря о создании приложений для платформы Microsoft .NET, нельзя не упомянуть технологию ASP .NET, предназначенную для создания Web-приложений и Web-сервисов. Именно эта технология, на мой взгляд, привлекает внимание разработчиков Web-решений к платформе Microsoft .NET благодаря предоставляемым ею возможностям быстрого создания Web-приложений с самыми разнообразными функциями, и то, как именно она поддерживается в том или ином средстве разработки, может оказаться важным при принятии решения о том, каким инструментом пользоваться для решения конкретной задачи.
Поддержка ASP .NET во всех редакциях Delphi реализована очень неплохо — в среду разработки встроен достаточно удобный дизайнер форм Windows Forms; помимо поддержки соответствующих классов .NET Framework Class Library, в Delphi реализованы дополнительные классы Borland DB Web Controls для ASP .NET, предназначенные для управления сеансами пользователей и процессом связывания с данными и упрощающие создание и сопровождение приложений (Borland DB Web Controls доступны в редакциях Enterprise и Architect).
Таким образом, особенности Delphi 8, относящиеся собственно к процессу создания кода приложений, являются весьма привлекательными. Однако, если бы данный продукт ограничивался только этими возможностями, он был бы, на мой взгляд, не слишком интересен — в конце концов возможности создаваемых приложений во многом определяются возможностями самой платформы, а ориентируясь исключительно на поддержку этих возможностей, довольно сложно добиться каких-либо преимуществ перед другими средствами разработки. Поэтому ниже мы рассмотрим те особенности Delphi 8, благодаря которым данный продукт становится интересным и уникальным.
Поддержка жизненного цикла приложений
оворя о тенденциях развития рынка инструментов для создания приложений, нельзя не отметить, что современные проекты невозможно реализовывать исключительно с помощью средств разработки. Сегодня разработка приложений сводится не только и не столько к написанию кода, сколько к этапам, предшествующим этому и следующим за этим, и потребность в предназначенных для этих этапов инструментах у компаний и отделов, специализирующихся на разработке приложений, очень велика. Нельзя сказать, что таких инструментов вообще не существует или что их выбор невелик, но и собрать набор инструментов, хорошо совместимых между собой, сейчас нелегко.
Именно поэтому в настоящее время стратегия развития средств разработки Borland предполагает поддержку полного жизненного цикла приложений (Application Lifecycle Management, ALM), включающего определение требований, проектирование, разработку, тестирование, внедрение и сопровождение приложений. Об этом свидетельствует прошлогоднее приобретение корпорацией Borland ряда компаний — BoldSoft MDE Aktiebolag (ведущего поставщика новейшей технологии разработки приложений Model Driven Architecture), Starbase (поставщика средств конфигурационного управления программными проектами), TogetherSoft Corporation (поставщика решений в области проектирования программного обеспечения). За время, прошедшее с момента приобретения этих компаний, была проделана большая работа по интеграции этих продуктов между собой, результаты которой воплощены в Delphi 8.
Разработка, определяемая проектированием
Из наиболее важных особенностей Delphi, на которые необходимо обратить внимание не только разработчикам, но и архитекторам приложений, следует выделить наличие объектов Borland ECO (Enterprise Core Objects), предназначенных для ускорения разработки, определяемой проектированием. О разработке приложений, определяемой проектированием (MDA, Model Driven Architecture), вы сможете прочесть в цикле статей Константина Грибачева, публикуемом в нашем журнале; здесь же мы только отметим, что и технология MDA, и являющаяся ее дальнейшим развитием технология ECO позволяют, создав модель приложения с помощью какого-либо средства UML-моделирования (Rational Rose, Borland Together и др.), получить в готовом приложении набор классов, реализующих эту модель, практически без написания дополнительного кода и вдобавок создать базу данных, реализующую часть модели, связанную с хранением данных (причем скорость создания приложений оказывается в этом случае настолько высока, что далеко не все разработчики, привыкшие к традиционным методам создания приложений, готовы в это поверить). Технология ECO позволяет не только генерировать приложение на основе UML-модели, но и осуществлять постоянную синхронизацию модели, созданной в Borland Together, и приложения, созданного с помощью Delphi 8. При этом оба инструмента доступны из единой среды разработки (технология синхронизации кода и модели носит название LiveSource). Впрочем, технология Borland ECO заслуживает освещения в отдельной статье, и, полагаю, мы сможем вернуться к этой теме через какое-то время.
Enterprise Core Objects доступны в редакции Architect, а средства визуализации кода на основе технологий Borland Together — во всех редакциях продукта.
Интеграция со средствами управления требованиями
Одной из составных частей жизненного цикла приложений является определение требований. Без этого, как правило, практически невозможно ни нормально организовать работу над проектом, ни понять, действительно ли заказчик хотел получить именно то, что было реализовано. Поэтому управление требованиями — одна из важнейших составляющих процесса разработки.
Говоря о Delphi, нельзя не отметить наличие модуля интеграции со средством управления требованиями Borland CaliberRM (об этом продукте мы писали в предыдущем номере нашего журнала). Данный модуль интеграции доступен во всех редакциях Delphi 8.
Средства оптимизации приложений
Тестирование и оптимизация производительности приложений являются важными составными частями процесса создания приложений. Для поддержки этого этапа жизненного цикла приложений в состав редакции Architect включен Borland Optimizeit Profiler для Microsoft .NET Framework, и этот продукт также интегрирован со средой разработки.
Средства управления изменениями
Одной из важных составных частей управления проектами является управление изменениями. Оно обычно производится на всех этапах создания приложения. С точки зрения Borland это наиболее важная составляющая проекта — ведь изменения могут происходить и в требованиях, и в коде, и в моделях. Без отслеживания изменений управлять проектом практически невозможно, и для решения данной задачи можно применять Borland StarTeam — масштабируемое средство управления конфигурациями программного обеспечения, хранящее в централизованном репозитарии все необходимые данные и облегчающее взаимодействие сотрудников, ответственных за выполнение различных задач. Данный продукт предоставляет команде участников проекта разнообразные средства для публикации требований, управления задачами, планирования, работы, обсуждения изменений, контроля версий, организации документооборота. Он входит в состав редакций Enterprise и Architect.
Заключение
аким образом, после долгого ожидания мы наконец получили средство разработки, позволяющее перейти на платформу Microsoft .NET и одновременно сохранить инвестиции, сделанные компаниями-разработчиками и отделами разработки, в ранее созданный код и знания разработчиков. Не менее важно и то, что Delphi 8 вполне удовлетворяет и иным требованиям, предъявляемым к инструментам для создания корпоративных приложений, — этот продукт содержит средства оптимизации приложений и интеграции с инструментами моделирования, управления требованиями, управления изменениями. На мой взгляд, именно эти особенности заставляют рассматривать Delphi 8 в качестве одного из наиболее подходящих инструментов для реализации сложных корпоративных проектов.