Что такое Adobe Flex? Это просто Flash II?

Вопрос

Хорошо, меня смущают все модные слова и бинго пресс-релиза.

  • Какая связь между flash и flex:
    • Заменить вспышку (не совсем совместимо)
    • Усиление вспышки
    • Следующая версия флеш, но все еще в основном совместима
    • Отдельная технология в целом
    • ???
  • Если я начинаю во Flash сейчас, я должен просто перейти к Flex?

Следовать за

Хорошо, так что я слышу, что есть три разные части головоломки:

  • вспышка
    • Графический редактор, используемый для создания "Flash Movies", то есть это IDE, которая фокусируется на визуальном аспекте "Flash" (Официально Flash CS3?)
    • Официальное название для плагинов для отображения (например, "Загрузить Flash сейчас!")
    • Общая ссылка на весь технологический стек
    • С точки зрения редактора, это редактор на основе линейной шкалы времени, лучше всего используемый для анимации со сложной интерактивностью.
  • Actionscript
    • Язык программирования "Flash"
  • сгибать
    • Adobe Flash IDE, в которой основное внимание уделяется аспекту кодирования / программирования "Flash" (Flex Builder?)
    • Библиотека Flash, которая расширяет возможности Flash и облегчает программирование (Flex SDK?)
    • Не привязан к временной шкале (как Flash IDE), и поэтому "стандартные" приложения выполняются легче.

Это правильно?

-Адам

22 ответа

Решение

Adobe Flex Builder - это IDE от Adobe для разработки приложений, которые будут работать в плагине Flash. Flex SDK относится к библиотекам, которые разработчики используют для написания приложений.

По сути, термин "Flex" - это сторона разработки, а "Flash" - это сторона технологии Adobe.

Исправление: термин "Flash" также используется для обозначения Flash IDE, которую используют дизайнеры.

Термин " Flash" может включать любые другие термины, определенные ниже, и я считаю, что выражение "Flash" без указания того, что вы имеете в виду, может вводить в заблуждение и вводить в заблуждение. Показательный пример: я не уверен, что вы конкретно имеете в виду, когда говорите "Flash" в своем вопросе. Это Flash Player? Авторский инструмент? Или целая коллекция технологий, которые подпадают под то, что Adobe называет "Flash Platform"? Чтобы прояснить все это, позвольте мне определить технологии, используемые при создании контента Flash и Flex, чтобы мы все использовали одну и ту же терминологию:

Flash Player - это среда выполнения мультимедийного содержимого в браузере. Существует также Flash Lite для запуска содержимого Flash на старых или недорогих мобильных устройствах, а Adobe AIR расширяет Flash Player, позволяя авторам контента публиковать собственные настольные и мобильные приложения, которые могут интегрироваться с такими вещами, как файловая система, оконные системы и устройства. датчики, такие как акселерометр и камера. В совокупности Adobe называет их средой выполнения Flash.

Flash Professional (часто называемый инструментом разработки Flash или Flash IDE) традиционно был основным приложением, используемым для создания содержимого, которое выполняется в Flash Player. Он очень ориентирован на дизайнера с графиками, слоями и визуальными инструментами рисования. Разработчики программного обеспечения могут счесть это приложение дезориентирующим и ограниченным по сравнению с другими инструментами разработки, которые в большей степени ориентированы на код, такими как Flash Builder (см. Ниже). Когда кто-то говорит: "Я что-то создал с помощью Flash", они часто имеют в виду инструмент разработки Flash, но это не всегда так. По этой причине хорошо всегда уточнить, чтобы избежать путаницы.

ActionScript - это основной язык программирования, поддерживаемый Adobe для целевой среды выполнения Flash. Текущая версия - ActionScript 3 (сокращенно AS3), которая поддерживается со времен Flash Player 9. Содержимое, созданное в более старых версиях ActionScript, все еще можно запускать в последних версиях Flash Player, но новые функции поддерживаются только при использовании ActionScript 3 для создавать новый контент.

Flex - это набор технологий, предназначенных для создания многофункциональных приложений, ориентированных на среды выполнения Adobe Flash. Хотя высказывание "Flex" ранее имело ту же неоднозначность, что и "Flash", торговая марка Flex все больше и больше фокусируется на инфраструктуре Flex и SDK, описанных ниже.

Flex SDK состоит из компиляторов, отладчика командной строки и инфраструктуры Flex. Включенные компиляторы: 1. MXMLC, компилятор ActionScript и MXML для вывода окончательного SWF-файла для развертывания во Flash Player. 2. COMPC, компилятор статической библиотеки для ActionScript, который выводит SWC-файлы. 3. ASDOC, генератор документации, построенный по технологии компилятора.

Инфраструктура Flex представляет собой набор классов ActionScript, предназначенных для создания многофункциональных интернет-приложений. Он включает в себя такие элементы, как элементы управления пользовательского интерфейса, веб-службы и другие классы подключения, средства форматирования и проверки, перетаскивание, модальное управление окнами и состояния компонентов. Эти классы находятся в пакете mx.*. Обычно, когда разработчики говорят "Flex" без какой-либо поясняющей информации, они имеют в виду среду Flex, а не продукт, ранее известный как Flex Builder.

В 2011 году Adobe пожертвовала Flex SDK Фонду программного обеспечения Apache. Теперь он называется Apache Flex и полностью управляется сообществом, а не Adobe. Однако сотрудники Adobe продолжают вносить свой вклад в проект, а Flash Builder (см. Ниже) продолжает поддерживать новые SDK, выпущенные проектом Apache Flex.

MXML - это язык разметки на основе XML, используемый компиляторами Flex для упрощения компоновки и размещения компонентов в контейнерах. Древовидная структура XML упрощает визуализацию иерархии содержимого. MXML фактически преобразуется в ActionScript во время процесса компиляции.

Flash Builder (ранее известный как Flex Builder) - это среда разработки, которая позволяет разработчикам создавать проекты различных типов для создания SWF-файлов, которые развертываются во время выполнения Flash. Он построен на платформе Eclipse и более знаком для разработчиков программного обеспечения. Flash Builder поддерживает проекты, созданные с использованием Flex или чистого ActionScript. Проекты Flex включают инфраструктуру Flex. Проекты ActionScript - это самые основные, с которыми вы можете работать, начиная с одного класса и пустого холста, а среда Flex не включена.

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

Платформа Flex специально разработана для создания приложений. Он включает в себя множество традиционных элементов управления формой (кнопки, списки, сетки данных и т. Д.), И большая часть кода выполняется на расширенной платформе компонентов, написанной на ActionScript. Не каждый создает контент, предназначенный для создания Flex, и Flex не заменяет традиционную практику разработки Flash для всех. Это лучший подход для некоторых разработчиков, но может не подходить для других. Более насыщенные дизайном сайты, такие как созданные для фильмов, музыки, энергетических напитков, рекламных кампаний и тому подобного, вероятно, не должны использовать среду Flex. Эти типы содержимого могут лучше подходить для Flash Professional или проекта ActionScript в Flash Builder. Точно так же маленькие виджеты, которые вы помещаете в боковую панель вашего сайта или в свой профиль на сайте социальной сети, возможно, должны быть созданы с использованием чистого ActionScript (без фреймворка Flex), поскольку они требуют меньшего размера файла и, вероятно, не нуждаются в большая сложная компонентная архитектура, предназначенная для больших приложений. При нацеливании на среды выполнения Flash среду разработки, платформы и рабочий процесс следует выбирать в соответствии с требованиями и целями проекта.

Да, меня это тоже смутило довольно давно.

Похоже, Flex - это название среды IDE "Flex Builder" (на основе Eclipse) и общего подхода к созданию файлов флэш-памяти с использованием mxml и ActionScript вместо обычных инструментов Flash.

Я думаю, что подходы mxml и ActionScript (то есть Flex) разработаны для того, чтобы привлекать гораздо больше внимания программистов, в то время как Flash-сторона больше подходит для графических дизайнеров.

Конечным результатом любого из этих подходов является файл.swf, который можно запустить в плагине флеш-плеера браузера (хотя с помощью Flex вы можете вместо этого ориентироваться на среду выполнения Adobe Air, если вы хотите получить доступ к файловой системе и работать в автономном режиме и т. Д.).

Мой совет: если вы пришли из программирования, начинать с Flex.

В чем разница между Flex и Flash?

То, как я держу это в уме и объясняю это другим, таково:

Выберите правильный инструмент для того, что вы хотите создать.

Если вы хотите написать ПРИЛОЖЕНИЕ с использованием технологии Flash, используйте Flex.

Если вы хотите создать АНИМАЦИЮ с использованием технологии Flash, используйте традиционный Flash.

Flex оптимизирован для создания приложений (но вы можете создавать примитивную анимацию с использованием состояний) и компилируется в SWF.

Flash оптимизирован для создания анимации, но вы также можете создавать приложения с дополнительной работой, и он компилируется в SWF.

Когда у вас есть SWF, вы можете играть на своем Flash плеере, хотя Flex требует Flash 9 или выше.

В заключение

Применение -> Flex -> SWF

Анимация-> Flash -> SWF

Надеюсь это поможет.

Часть беспорядка - то, что "Вспышка" означает многократные вещи. Flash может означать одно из множества приложений ИЛИ общую технологию, лежащую в основе SWF.

Есть продукт Flash CS3, который продает Adobe. Это обычно предназначено для дизайнеров и использует основанный на временной шкале подход к созданию SWF. Раньше продукт Flash был единственным способом создания SWF-файлов, а SWF-файлы обычно использовались только для анимации и других визуальных эффектов, которые невозможно в браузере иначе.

Тогда есть Flash Player. Это приложение / плагин, используемый для запуска SWF. SWF-файлы также могут быть помещены в "проектор", который позволяет им работать как отдельное приложение, но это не так часто.

В какой-то момент (я не знаю, когда) Flash начал использоваться для более интерактивных приложений. Продукт Flash не очень подходил для такой работы, так как был разработан для создания анимации. Признавая это, Macromedia создала Flex. Flex - еще одна среда разработки для создания SWF-файлов, но она больше ориентирована на разработчиков, чем на дизайнеров. Последняя версия - Flex 3. Flex SDK доступен бесплатно и включает в себя компилятор командной строки, отладчик и библиотеки классов. Adobe также предоставляет (для покупки) приложение Flex Builder, интегрированную среду разработки на основе Eclipse для создания SWF-файлов с помощью Flex. Есть несколько бесплатных IDE для использования Flex, в первую очередь FlashDevelop, хотя я не знаю ни одного, который бы предоставлял визуальный конструктор для MXML, язык разметки, используемый Flex для определения пользовательских интерфейсов, или визуальную оболочку для отладчика.

Если вы подходите к Flash с точки зрения разработчика, вы захотите использовать Flex. Это, вероятно, намного ближе к тому, с чем вы привыкли иметь дело, и, похоже, это направление, в котором Adobe продвигает Flash в целом.

Flex - это фреймворк FlexBuilder - это IDE (в попытке разрешить путаницу между двумя, Adobe переименовывает FlexBuilder в FlashBuilder)

если вы не знаете, что такое Framework:

Flex - это Flash, как CodeIgniter для PHP

или как что .net является.

Мне нравится думать о фреймворке как о расширении языка, как если бы вы расширяли класс в ООП.

Flash является средой выполнения - вы используете инструмент Flash Authoring для создания некоторого содержимого Flash, а проигрыватель Flash обрабатывает ваш контент, выполняет сценарии и рисует соответствующие изображения на экране.

Flex - это среда разработки - вы используете инструменты разработки Flex, чтобы определить, как должен работать контент на основе компонентов, а затем Flex генерирует для вас Flash-контент. Вы могли бы сделать то же самое с инструментами Flash Authoring, но использование Flex может позволить вам не изобретать некоторые колеса.

С функциональной точки зрения Flash - чрезвычайно универсальная среда выполнения; это дает вам большую свободу делать все, что вы хотите. Но если вы создаете симулятор ссуды, вам, вероятно, не нужна свобода, чтобы точно определить, как работают все выпадающие меню и переходы экрана. Возможно, вы бы предпочли, чтобы вы могли просто использовать готовые компоненты для этого, чтобы вы могли сосредоточиться на кредите. Flex позволяет вам делать это, и это может стоить много работы, если вы решите, что вам нужно много свободы, чтобы изменить все мелкие детали.

Вот еще одно простое представление, основанное на описании приложения, которое вы хотите разработать.

Хотите ли вы, чтобы он имел очень детализированные возможности пользовательского интерфейса, которые вы ожидаете от приложения на рабочей станции (например, Windows), с довольно полным набором элементов управления (список, комбинированный список, сетка и т. Д.)?

Флекс дает вам это.

Вы хотите доставить его для работы в большинстве браузеров (т. Е. Везде, где установлен / устанавливается Flash)?

Flex дает вам это, потому что он работает на виртуальной машине Flash.

Вы также хотите иметь возможность предлагать его для запуска в ОС, а не в браузере (с минимальными изменениями кодирования?)

Flex может дать вам это, позволяя запускать его не во Flash VM, а вместо этого в Adobe AIR VM (которая имеет версии для Windows, Mac и Linux), которая предоставляет оболочки для общих ресурсов ОС, таких как файловая система, диалоговое окно ОС компоненты пользовательского интерфейса (например, "Открыть / Файл / и т. д.")

Вы в порядке, используя javascript в качестве языка разработки? Вы должны быть, потому что это единственный поддерживаемый язык, в форме ActionScript, который является надлежащим расширенным набором javascript - он принимает код javascript напрямую.

Итак, разбиты на части:

  1. Среда выполнения, либо плагин Flash-браузера, либо среда выполнения AIR (эквивалент нативной ОС).

  2. Actionscript как язык разработки.

  3. Куча библиотек элементов управления и других ресурсов, таких как типичные Window, Frame, Combobox, Listbox, Image container, TextBox, TextArea, a wysiwyg-y RichTextArea и т. Д.) Это область Flex.

С помощью только перечисленных выше ресурсов вы можете использовать бесплатный компилятор командной строки для создания приложений таким же образом, как и с любым другим языком компилятора командной строки с библиотеками.

Затем, если вам нужна модная IDE, есть Flex Builder, представляющий собой набор расширений для хорошего Eclipse (за несколько сотен долларов). Или есть несколько других IDE, которые более или менее эквивалентны.

В продолжение этого я нашел очень полезную статью на эту тему:

Adobe Flash and Flex - что наиболее важно для вашего проекта?

Интегрированная среда разработки Flash (IDE), также известная в своей текущей версии как Flash CS3, является идеальным инструментом для разработки анимации персонажей или проектов линейной анимации. Это проекты, которые не требуют большого количества кода и могут быть эффективно реализованы с помощью временной шкалы Flash IDE.

Другими словами, Flash CS4 очень тесно связан с временной шкалой - хорошо для линейных последовательностей или анимаций. Хотя можно добавлять циклы и интерактивность в виде перехода к новым точкам на временной шкале, это ограничивает проекты, которые не могут быть легко намечены с точки зрения прогрессирования во времени.

Проще говоря, это инструмент анимации с очень мощными интерактивными функциями - создание и создание новых элементов на лету, а прыжки по временной шкале позволяют создавать приложения, а в среде Flash CS4 IDE это делается относительно легко, но это не так. отличная платформа для прикладного программного обеспечения.

Flex был создан как ответ на это - хотя он использует те же элементы и предоставляет код, он не привязан к временной шкале и имеет больше общего с объектно-ориентированными языками программирования, чем с языками анимации.

IDE Flex Builder включает в себя как IDE для программирования, так и конструктор GUI для быстрого создания интерфейсов, а также несколько других инструментов для разработки приложений, работающих на Flash Player.

Flex - это среда разработки, которая компилирует xml и actionscript в SWF, который выполняется на клиентском компьютере, обращающемся к веб-сайту. Он также может работать как настольное приложение с использованием Adobe AIR. Flash использует холст для рисования вместо xml. Скомпилированные SWF-файлы можно назвать Flash, что добавляет путаницы. Вы можете найти Flex похожим на ASP.NET, который принимает xml и C# (vb.net и т. Д.) И компилирует в dll. Конечно, ASP.NET работает на веб-сервере.

Если вы выбираете между приложением Flex и Flash, подумайте, будет ли приложение основано на данных. Если вы хотите сделать красивое приложение для работы с электронными таблицами, Flex может быть подходящим вариантом. Если вы создаете видеоигру или какую-то презентацию, вам, вероятно, понадобится Flash.

Flex работает и в Linux, а Flash - нет.
Flex это своего рода Flash CS 4 второе издание.

Flex менее графичен, поскольку разделяет компилятор и IDE, что позволяет выполнять компиляцию из командной строки (так называемые make-файлы, большие проекты), что позволяет использовать альтернативные IDE для Flash.

Редактировать:
Во Flex отсутствуют некоторые классы, которые есть во Flash CSX (например, fl.controls), а во Flash отсутствуют некоторые классы, которые есть во Flex (например, mx.controls или mx.alert).

В общем:
Вы можете бесплатно получить собственный Flash-компилятор, загрузив Flex 4 SDK и FlashDevelop. Но это не заменит Flash.
Flash создает файлы намного меньшего размера (например, Flash компилирует проект до 100 КБ, в то время как Flex компилирует тот же проект до 500 КБ). Так что Flash предназначен для мультимедийных интернет-приложений, а Flex - для настольных мультимедийных приложений.

Flex и Flash имеют разные целевые аудитории. Flex больше ориентирован на разработчиков, а Flash больше ориентирован на дизайнеров и художников.

Flex - это бесплатная среда с открытым исходным кодом, основанная на ActionScript, для разработки SWF-файлов и приложений AIR. Flex Builder (теперь переименованный во Flash Builder версии 4, чтобы избежать путаницы) - это коммерческая среда разработки от Adobe для разработки SWF/AIR с использованием флексической среды. В то время как flash (CS3) хорош для анимации, flex подходит для приложений и пользовательского интерфейса. Adobe позиционируется как фреймворк RIA (Rich Internet Application).

Flashdeveloper упоминается как бесплатный инструмент для разработки приложений Flex. Я просто хочу добавить бесплатный инструмент для разработки приложений (создать файл MXML с помощью дизайнера): designview. Он доступен непосредственно на веб-сайте Adobe, это базовое эфирное приложение, которое дает возможность легко и свободно взглянуть на возможности flex.

Flex Builder 3 -> Flash Builder 4, даже если вы используете его для Flex. Вы также можете использовать его для Flash. Если вы действительно хотите узнать обо всем этом, вы должны просто купить ветеран обед на один день, потому что это сэкономит вам МЕСЯЦЕВ. Adobe делает несколько классных продуктов, но также хорошо известна как ленивая компания, и это приводит к крайне плохой документации. Если только вы не поклонник "liveocs", это термин, придуманный Adobe для описания "медленного и раздутого HTML".

Flex - это по сути язык, который компилируется во флэш-фильм или апплет, который будет запускаться в плагине проигрывателя Adobe Flash.

Flash - это язык программирования, довольно похожий на JavaScript, но с поддержкой статических типов.

Flex - это флэш-библиотека, предназначенная для того, чтобы помочь людям программировать на Flash на более высоком уровне.

Некоторым может быть полезно думать об этом как о Flex поверх Flash, как о MFC поверх C++.

Flex не является языком программирования. flex - это платформа для разработки многофункциональных интернет-приложений во время выполнения Flash и включает ActionScript и MXML в качестве языка.

Проще говоря, технология Flex использует MXML для создания приложений. MXML аналогичен HTML, а компоненты Flash аналогичны элементам формы.

MXML в основном позволяет вам указать, какие компоненты Flash (такие как таблица, выпадающий список или что-то нестандартное, что вы создаете во Flash) будут отображаться на экране приложения.

Это очень упрощенный ответ, но именно так я склонен объяснять Flex.

(Flex Builder - это среда для разработки приложений Flex и Flash)

Flex представляет собой набор технологий, инструментов и структур для создания межплатформенных многофункциональных интернет-приложений.

"Adobe Flex - это набор технологий, выпущенных Adobe Systems для разработки и развертывания межплатформенных многофункциональных интернет-приложений на основе собственной платформы Adobe Flash".

Adobe Flex

Лучший ответ, который я нашел для "Что такое Flex", находится на этой странице: http://www.adobe.com/products/flex/faq.html

Поиск "Чем Flex отличается от Flash?"

Моя интерпретация этого заключается в том, что если ваше приложение было сгенерировано из Flash Professional, это приложение "Flash". Если он был создан с помощью Flex SDK (Flash Builder, Flash Develop или инструментов прямого кода и командной строки), это приложение "Flex". Как приложения "Flash", так и приложения "Flex" компилируются в байт-код, который может запускаться "Flash Player" или "Adobe AIR". Оба типа приложений могут включать код "Actionscript".

Другие вопросы по тегам