17.11.2003/79
Отчет по конференции Borland Developer's Day 2003
На конференции Borland Developer's Day, прошедшей в большом концертном зале здания президиума Академии Наук 13 ноября, фирма Borland представила публике свои новые продукты и рассказала о своей новой стратегии в области разработки инструментов для разработчиков.
Но вначале углубились в историю. Как раз в этом году корпорация Borland отмечает 20-летие своего присутствия на рынке. На самом деле фирма Borland Software образовалась еще раньше - в 1981 году в Ирландии. Отсчет же своего возраста по заведенному порядку корпорация ведет от момента назначения Филиппа Канна в 1983 году президентом компании и открытия офиса в Калифорнии. На конференции вице-президент Borland по связям с разработчиками и главный проповедник корпорации Дэвид Интерсимоне (David Intersimone) показал фотографии гаража, в котором вначале размещалась компания, и рассказал об основных вехах пути Borland - гараж на одну машину, на две, на три и так далее: Шучу, конечно.
Региональный директор корпорации Ludovic Neveu рассказал о настоящем корпорации. Сейчас в Borland работают около 1600 постоянных работников по всему миру и еще примерно столько же внештатных контрактников. Корпорация заключила соглашение с Accenture (www.accenture.com), крупнейшим мировым системным интегратором, о распространении и продвижении продуктов Borland клиентам Accenture. А клиенты фирмы Accenture работают, между прочим, в очень многих отраслях:
- Сектор финансовых услуг
- Телекоммуникации и высокие технологии
- Нефтегазовая промышленность
- Электроэнергетика
- Автомобильная промышленность
- Фармацевтическая промышленность и производство медицинских препаратов
- и прочее, прочее:
Среди партнеров Ludovic особенно выделил корпорацию Microsoft, которая спонсировала проведение этой конференции.
Со следующим докладом выступил опять Дэвид Интерсимоне. В этот раз он описал настоящие и будущие направления стратегии корпорации Borland.
Во-первых, корпорация намерена поддерживать полный жизненный цикл приложения - от проектирования до развертывания. С этой целью корпорация скупила компании-разработчики инструментов отдельных частей жизненного цикла - система управления требованиями CaliberRM и система версионного контроля StartTeam пришли вместе с фирмой StarBase, семейство тестирования производительности OptimizeIt - фирмы VMGEAR, и продукты моделирования Together, соответственно, фирмы TogetherSoft.
Во-вторых, корпорация берет на вооружение agile методологии. Что это значит, для разработчиков было не очень понятно, поэтому в конце доклада было много вопросов (см. ниже).
В-третьих, планируется дальнейшие развитие инструментов разработки методом MDA (Model Driven Architecture) с помощью платформы ECO (Enterprise Core Objects) - набора компонентов, предназначенного для создания приложений, управляемых моделями. Сейчас для разработки с помощью ECO предлагается использовать С#Builder и Delphi 8 for .Net.
В-четвертых, Дэвид сказал, что "Borland всегда идет по пути, намеченному Microsoft".
Вопросы, которые задавались Дэвиду и суть его ответов.
В: Какие методологии используются в самой корпорации Borland? О: Всякие - есть XP, есть Agile, есть проекты вообще без методологий. (Кстати, сначала переводчик неправильно перевел вопрос, и Дэвид сначала ответил на вопрос "какие инструменты используются в разработке" - ответ - "Delphi для разработки Delphi, Cbuilder для Cbuilder и т.д.")
В: Будет ли Borland создавать свою собственную методологию? О: Нет. Корпорация Borland не считает, что для всех проектов может подойти единственная всеобъемлющая методология. Поэтому своими инструментами они будут стараться не навязывать какую-то одну методологию и будут поддерживать все методологии. Это и есть подход Agile в понимании корпорации Borland.
В: Как насчет разработки Delphi под Linux, развитие линейки Kylix? О: Никак. Сейчас Delphi разрабатывается в направлении .Net.
В: Что читают в Borland, какие книги по методологиям? О: В Borland в основном читают книги по J2EE и .Net (Смех в зале).
Последний вопрос был задан представителем издательства "Вильямс". Кстати, вместе с презентационными материалами, розданными участникам конференции, была выпущенная этим издательством книга "Практическое руководство по функционально-ориентированной разработке ПО" Палмера и Фелсинга. После взаимных комплиментов представитель издательства сообщил публике, что в их издательстве готовятся новые переводные книги по методологиям, в том числе по XP и RUP.
Следующий доклад был спонсорский, от Microsoft, но сразу расставляющий все на свои места.
Во-первых, как известно, Microsoft разрабатывает совершенно новую операционную систему Longhorn на основе платформы .Net.
Во-вторых, хотя в Longhorn существующие Win32-приложения будут работать, однако вся новая разработка в Microsoft будет вестись только для платформы .Net.
В-третьих, корпорацией Microsoft намечены основные шаги по переходу от платформы Win32 к платформе .Net
- Сначала (текущее положение дел) совместное существование обоих платформ, причем .Net устанавливается поверх Win32 в комплекте .Net Framework;
- Приход ядра WinFX и работа приложений Win32 через ядро WinFX;
- И, наконец, выпуск Longhorn - операционной системы, где .Net есть основа всей системы, и поэтому приложения .Net будут выполняться наиболее эффективно, а Win32- приложения будут считаться устаревшими, хотя и будут выполняться.
После доклада Microsoft аудитория не задавала вопросы.
Доклад Сергея Орлика, менеджера по продуктам московского представительства корпорации Borland, был посвящен системе контроля версий StarTeam и системе управления требованиями CaliberRM. Собственно, ничего нового в докладе не было - продукты эти не новые, они были куплены Borland вместе с фирмой StarBase. Желающие могут ознакомиться с их возможностями на сайте Borland.
Из вкусностей этих систем хочется отметить:
- StarTeam может работать не только с собственной базой данных, но и с базами VSS и PVCS, причем одновременно;
- StarTeam позволяет организовывать на клиенте личный репозиторий разработчика;
- StarTeam для файлов известного формата передает по сети только изменения в них, что значительно уменьшает трафик;
- Также, как Rational RequisitePro, CaliberRM умеет отображать зависимости между требованиями, однако в отличие от RequisitePro они отображаются в виде графа, а не таблицы переходов, что на мой взгляд несколько удобнее.
Особенно в докладе подчеркивалась интеграция этих продуктов в среды разработки, выпускаемые корпорацией Borland. Из недостатков в StarTeam замечена невозможность разделения версий файла или проекта на отдельные версии, каждая со своей историей, как это сделано в ClearCase.
Доклад по StarTeam и CaliberRM плавно, без паузы, перетек на тему Together. Together - это семейство продуктов для моделирования на языке UML версии 1.4, поддерживающих синхронизацию с кодом (Java, C#, Delphi) и интегрированных со средами разработки Borland, но со всеми. Интересно, что интерфейс Together при аналогичных возможностях удобнее, чем в Rational XDE - в нем правильнее организован доступ к панелям инструментов, не загромождая экран. Еще в Together есть аудит модели и большое число готовых метрик для измерения качества модели.
После обеда конференция разделилась на две секции - по инструментам разработки и по решениям для предприятий. Перед докладом о C#Builder вне программы выступил Сергей Макарьин, менеджер по корпоративным проектам Borland, с докладом о новой стратегии корпорации в отношении сред разработки.
Теперь место IDE (интегрированные среды разработки) занимают UDE - универсальные среды разработки, объединяющие интерфейсы сред каждого этапа жизненного цикла приложения, от проектирования до тестирования. Borlan объявляет о своей поддержке трех различных UDE. Это:
- Borland developer Studio .Net UDE, реализованная в C#Builder;
- Кросс-платформенная среда, основанная на Java, реализованная в Jbuilder;
- Eclipse
Евгений Даниленко, сотрудник EADSOFT, начал с описания Borland Database Provider - нового компонента доступа к базам данных, созданного специально для платформы .Net. BDP расширяет ряд серверов СУБД, к которым возможно осуществлять доступ по технологии ADO.Net.
Далее Даниленко продемонстрировал разработку простого приложения в C#Builder, с использованием BDP. Была создана модель в Together, затем из модели сгенерирована база данных и, из той же самой модели, созданы объекты приложения. Что интересно, с точки зрения приложения таблицы базы данных представляют собой объекты, а доступ к полям таблицы есть просто к свойствам объекта.
После демонстрации задавали вопросы:
В: Как осуществляется работа с существующими базами данных? Можно ли реинжинерить базу данных в модель и дальше использовать ее в приложении? О: Можно, но не все так легко, как хотелось бы:
В этот момент Евгения Даниленко прервал Сергей Орлик и стал сам отвечать на этот вопрос. Смысл его довольно пространного ответа сводился к тому, что лучше все переделать все с самого сначала. Так дальше и повелось - в последующих докладах Сергей Орлик быстро перехватывал инициативу у докладчиков и на все вопросы отвечал сам. Но вопросов допускал немного, ссылался на недостаток времени, предлагал задавать вопросы в кулуарах и объявлял следующий доклад.
После Даниленко выступал Орлик. Он рассказывал, к чему надо готовиться, перенося VCL-приложения под .Net. Вкратце, ваш код потребует переделки в следующих частях:
- Вызовы Win32 API
- Работа с COM и OLE-объектами
- Работа с хэндлами
- Вызовы внешних динамических библиотек DLL
Основные компоненты и контролы VCL.Net соответствуют аналогичным VCL вплоть до свойств и методов. Поэтому переделки ожидаются минимальными.
Вообще говоря, во всех презентациях Delphi 8 называлась как версия Delphi 8 for .Net, и всячески говорилось, что это следующий шаг развития Delphi. Аудитория пыталась вопросами прояснить, как быть со старыми приложениями, написанными на предыдущих версиях Delphi. Но Сергей Орлик не сдавал позиции, отвечая уклончиво, говоря, что потребуется минимум изменений для переноса под .Net и т.п., пока не получил вопрос в лоб:
В: Имеется ли возможность разрабатывать на Delphi 8 приложения под Win32 для Windows 95? О: С Delphi 8 поставляется в комплекте Delphi 7. (Дружный смех в зале)
Таким образом, разработчикам, не сказав этого прямо, но вполне недвусмысленно дали понять, что эпоха разработки ПО под Win32 заканчивается на Delphi 7. Похожая ситуация уже знакома разработчикам на Delphi, когда появилась вторая версия Delphi 2 для Win32. Вместе с Delphi 2 тогда поставлялась первая версия Delphi для программирования 16-ти-разрядных Windows-приложений.
Следующим по программе выступил Александр Цимбал, BiTechnology, представляя аудитории новую среду разработки CBuilderX. Надо заметить, что с первых слов Александра почувствовалось, что его выступление будет самым внятным на фоне предыдущих ораторов, потому что Александр очень прямо, уверенно и доходчиво выражал свои мысли, не оглядываясь при этом на службу маркетинга корпорации Borland.
Перед докладом Александр Цимбал сделал небольшое отступление о стратегии корпорации Borland в отношении языка C++. В линейке C++Builder, сказал он, версия 6.0 будет последним ее представителем. Далее корпорация будет четко разделять два направления - библиотека VCL будет поддерживаться только для Delphi for .Net, а среды разработки на языке C++ будут ориентированы, в основном, на разработку кросс-платформенных приложенний, но уже без поддержки VCL. Поэтому представляемый сегодня продукт CBuilderX не является дальнейшим развитием линейки C++Builder, а занимает еще новую для Borland нишу в сегменте промышленных приложений.
Далее в докладе Александр отметил:
- CBuilderX будет существовать для нескольких платформ. Сейчас поддерживаются Windows 2000, Linux Red Hat, Solaris (SPARC)
- CBuilderX использует внешние компиляторы, в том числе компиляторы других фирм: MinGW, GNU, Microsoft, Intel, Metrowerks, Sun
- Отладка программ осуществляется внешним отладчиком, по аналогии с Jbuilder
- Для разработки графического пользовательского интерфейса в CBuilderX предлагается пакет wxWindows. В CBuilderX есть дизайнер форм и скромное число визуальных компонентов.
- В настоящий момент поддержка CORBA в CBuilderX имеется только для Borland Enterprise Server VisiBroker Edition.
После доклада у участников появилось много вопросов к докладчику, но их задавали, что называется, "в кулуарах".
В: Почему Borland так кинуло разработчиков C++? Почему опять нужно переделывать на новую графическую библиотеку свои продукты? Сначала TurboVision, потом OWL 1.0, потом OWL 2.0, потом VCL, потом еще CLX, а теперь еще и wxWindows. Почему Borland не может создать одну графическую библиотеку? О: Почему же не может. Она их и создает - TurboVision, OWL 1.0, OWL 2.0, VCL: (Смех)
В: Почему wxWindows, а не Qt? О: Так решили. Причины неизвестны. Хотя с Qt Borland уже работала в Kylix.
В: Почему так мало компонентов wxWindows в дизайнере? О: Это еще тестовая версия, скорее всего в коммерческой версии их будет больше.
В: Из-за чего появилось такое разделение ветки С++Builder? О: По данным анализа рынка разработки на платформе .Net занимают 40%, другие 40% занимает Java, оставшиеся 20% - промышленные, в том числе встроенные платформы.
Андрей Аристархов, BiTechnology, показал новую версию JBuilder, названную JBuilderX. Особенное восхищение докладчик выразил по поводу появившейся в JBuilderX возможностей по перемещению и докинга окошек среды.
Кроме модных окошек в JBuilderX появились новшества, ориентированные на увеличение продуктивности разработчика. Были продемонстрированы:
- сворачивание кода в редакторе Java-кода
- рефакторинг, работающий на Java Reflection API
- code info - подсказка вверху окна редактора о текущей области видимости
- "полностью модифицированный дизайнер для EJB"
- генерация документации из модели Together
Продолжил рассказ о JBuilderX Андрей Никаноров, тоже из BiTechnology. Он продемонстрировал:
- как легко создаются в JBuilderX Web-сервисы (Действительно, очень легко)
- как легко создать клиента к существующему или только что разработанному Web-сервису
- как выполняется реинжиниринг базы данных в модель Together. Однако связи между таблицами в EJB не восстанавливаются
- фоновую компиляцию проекта
Последний доклад в секции средств разработки был посвящен реляционной СУБД InterBase 7.1 в исполнении Дмитрия Кузьменко, фирма iBase. Кстати, Дмитрий Кузьменко многим разработчикам давно знаком еще со времен его прежней работы в Epsilon Technologies. Как и в случае Александра Цимбала, Дмитрию Кузьменко можно поставить пять за качество доклада.
Итак по докладу. Версия 7.1 сервера InterBase отличается от предыдущей по следующим позициям:
- Существенно увеличена скорость сервера за счет:
- изменен алгоритм сборки мусора
- параллельная работа на нескольких процессорах в SMP
- существенно улучшен оптимизатор запросов
- Появились системные временные таблицы с информацией о текущих соединениях, транзакциях, запросах и др. Посредством этих таблиц возможно не только посмотреть активность процессов, но и повлиять на нее, например "убить" затянувшийся пользовательский процесс.
- Решена проблема пустых TCP пакетов, из-за которых сервер периодически падал
Система управления базами данных JDataStore, которая отчасти уже представлялась публике в июне - это объектная база данных, основанная на Java. Она предназначена для хранения небольших объемов данных и занимает место в ряду встроенных СУБД, таких, как Sybase iAnywhere. Однако, по заверениям корпорации Borland, JDataStore значительно превосходит своих конкурентов по производительности, уступая, конечно, промышленным СУБД. Значительным плюсом является полная интеграция СУБД JDataStore с приложениями на языке Java.
Итак, что же мы узнали на конференции Borland Developer's Day?
Корпорация Borland прямо подтвердила, что ее путь развития теснейшим образом связан с путем Microsoft. Корпорация Borland предполагает, что у разработчиков под Windows нет другого пути, кроме как учиться разрабатывать под .Net. Корпорация Borland постаралась облегчить этот переход разработчикам, спортировав библиотеку VCL под платформу .Net.
Вторым приоритетом Borland будет Java. Корпорация будет дальше развивать линейку продуктов JBuilder и продукт Janeva для облегчения интеграции платформ J2EE и .Net.
Третьим, наименьшим по важности, приоритетом в развитии средств разработки корпорация Borland считает развитие кросс-платформенных приложений, ориентированных на использование CORBA.
Что касается инструментов поддержки жизненного цикла, то надо полагать, что Borland будет принимать усилия по увеличению степени интеграции продуктов между собой. В семействе продуктов Together еще есть нерешенные проблемы по генерации и реинжинирингу кода, по совместимости моделей. Также становиться насущной задача поддержки новой, второй версии языка моделирования UML. Однако, с другой стороны вряд ли стоит ожидать появление в ближайшее время каких-то кардинально новых функций в продуктах StarTeam, CaliberRM и OptimizeIt.
Сергей Шмаков
Ссылки по теме:
1. Отчет о конференции, материалы и фотографии на сайте Borland - http://info.borland.ru/bdd2003/index.html
2. Открытое письмо Саймона Торнхилла сообществу разработчиков на Delphi (перевод) - http://info.borland.ru/events/open_letter/index.html
3. Open Letter to the Borland C++ Developer Community - by J.P. LeBlanc http://bdn.borland.com/article/0,1410,31277,00.html
4. Zarko Gajic, "Анализ взаимоотношений Microsoft и Borland", в оригинале - "Conspiracy Theory: MS's .Net IS Borland's Product".
5. Отчет по семинару "Реализация ALM стратегии Borland для .NET и J2EE" - http://shmakov.ru/news/shownews.php?textID=21
6. Обсуждение конференции в форуме Borland - http://www.jbuilder.ru/forum/index.jsp?action=roottlist&fid=27 |