menu

Blog

  • Flash Builder 4 вышел в Public Beta

    На сайте Adobe выложены для скачивания Beta-версии Flash Builder 4 и Flash Catalyst. Выход новой версии Flex Builder в публичную бету - событие давно ожидаемое, подогретое самой Adobe постоянными "утечками" информации. Блоги будут гудеть как улей о новой версии, во многом дублируя официальные источники. В этом посте я попытался изложить то, что интересует меня лично в новом релизе.

    Сперва об имени - Flex Builder стал Flash Builder. Насчет этого переименования продукта мнений много, и все они личные. Adobe консолидирует маркетинговые усилия на одном термине-зонтике - "Flash", как Microsoft - на ".NET". Я не вижу в этом ничего обидного, Flash давно пора оторвать от стереотипа "flash - это онлайн игры и баннеры", и добавить в него "корпоративности".

    Стану-ли я Flash-разработчиком после переименования Flex Builder ? Нет, не стану. Я не работаю с Flash CS4, не имею понятия о timeline, и самое наверно важное - не умею рисовать. Я работаю только с Flex SDK - особой библиотекой, фрейворком, который дает мне вместо дизайнерских кисточек инструменты программиста для создания SWF-приложения. Поэтому, все честно, я - Flex разработчик.

    Кроме неоднозначного переименования Flex Builder во Flash Builder начиная с версии 4, может похвалиться многими новыми фичами, но нет особого смысла копипастить, написано много всего, можно почитать например пост Тима Бантела. В новом Flash Builder мне лично были интересны эти несколько фич:

    1. DCD - собственно это не фича, а скорее подход к разработке - Data Centered Development. Flash Builder предлагает такой workflow, при котором разработчик выбирает источник данных - (XML, Web-Service, BlazeDS/LCDS), делает интроспекцию в доступные методы и параметры, возможно делает тестовые запросы и генерирует модель. Затем разработчик собирает  вручную UI (таблицы, формы и проч.) или генерирует его по модели, а затем соединяет UI с моделью данных. Если источника данных нет, FB может сгенерить шаблон серверного кода, который придется допилить ручками. Как интересный факт я считаю что PHP считается одной из целевых серверных платформ, и благодаря сотрудничеству Zend и Adobe, для поддержки DCD для PHP-платформы будет использован Zend Framework.
    2. Network monitor - теперь можно наблюдать сетевую активность приложения без кун-фу браузерных плагинов.
    3. Package explorer и прочие визуальные улучшения, отзывчивость интерфейса.


    Языковые изменения Flex SDK 4 не привязаны к новой версии FB, но так как Flex SDK 4 является дефолтным для FB4, упомяну мои любимые:

    1. Новые компоненты и языковые фичи, логично разобранные в несколько неймспейсов (префикс Fx был для меня лично чем то вроде Джар-Джар Бинкса, ну вы понимаете о ком я). Три пространства имен:
      • MXML 2009 (fx) - содержит описание языка, включая новые языковые конструкции Flex 4. Этот namespace пришел на смену MXML 2006 и эти двое не могут быть использованы одновременно. Никаких визуальных компонент MXML 2009 не содержит, в отличие от предшественника.
      • Spark (s) - "новые" компоненты Flex 4, например FxApplication, FxButton и др.
      • Halo (mx) - "старые" компоненты Flex 3 из MXML 2006, включая AIR классы типа WindowedApplication и HTML.
    2. Two-way data binding - название говорит само за себя, простая и любимая фича. Теперь достаточно прибиндить значение текстового поля к переменной, чтобы отобразить ее значение. Когда пользователь начнет изменять текстовое поле - переменная будет изменятся автоматически - без лишнего кода. Гениальное - просто: text="@{variable}"
    3. Новый подход к описанию состояний (states) - теперь не нужно описывать разницу между состояниями view используя <addChild> <removeChild>. Достаточно лишь указать в какие состояния входит или не входит компонент, указав в аттрибутах includeIn и excludeFrom компонента список состояний. Для <setProperty>, <setStyle>, и <setEventHandler> также нашлась замена: теперь можно указывать значение свойства для каждого состояния через dot notation - property.state1="a". В Flash Builder 4 подсказка для состояний работает идеально, значительно ускоряя набор кода.
    4. FXG - встроенный язык описания графических примитивов. Специализированные библи отеки вроде Degrafa, при всех своих плюсах могут оказаться избыточными для многих проектов после введения FXG.


    Несколько вещей остаются за пределами внимания, я надеюсь, пока. Суть в том, что будучи сугубо программистом, я не берусь за проекты где требуется выдать eye-candy. Но кто сказал что бизнес-UI должен быть серым и скучным ? Оживить интерфейс, имея профессионально сделаный дизайн в PSD формате поможет тесная интеграция Flash Builder в семейство продуктов Adobe. Новый инструмент - Flash Catalyst - может сблизить дизайнера и программиста, позволяя первому "нарезать" дизайн, оживить действием и эффектами. Программист получит описание интерфейса в терминах FXG и легко встроит в свой проект. Для простых проектов, Flash Catalyst поможет программисту самому справится с техническим воплощением  дизайна приложения - лишь бы интерфейс был заранее профессионально нарисован. Уверен, что результат такого сближения пойдет на руку всем, и клиенты будут в полном восторге от результата.

    По ссылке перейдете на страницу Adobe Labs - enjoy !