Должен ли я использовать Flash или Flex? - PullRequest
6 голосов
/ 27 сентября 2010

Здесь, в SO, я спросил, какой язык мне следует использовать, чтобы создать веб-приложение, которое будет захватывать видео с веб-камеры пользователя и отправлять его на сервер, когда он нажимает «отправить», и ответы в основном были Flash.1002 * Но при поиске в Интернете я запутался в этой вещи Flash / Flex, так как они говорят, что Flash - это создание анимации, а Flex - действительно создание веб-приложений.

Так что мне использовать?Под Flash они подразумевали Flex?Или для такой программы Flash хорошо?Должен ли я использовать Flash Pro.или Flash Builder?Выучите ActionScript или XMXL?

Может показаться, что в Интернете есть тонны контента, но чем больше я читаю, тем больше я запутался.

Ответы [ 4 ]

11 голосов
/ 28 сентября 2010

Я бы предложил написать это приложение, используя Flex.Главным образом потому, что, на мой взгляд, набор инструментов Flex на намного лучше, чем Flash Professional.Хотя в вашем вопросе нет ничего, что действительно требовало бы инфраструктуры Flex, вы, вероятно, выиграете от ее использования.Не только для превосходной среды разработки, но и потому, что в инфраструктуре Flex есть несколько вещей, которые значительно упрощают работу с данными.

Несмотря на это, здесь, похоже, много путаницы в отношении терминологии, поэтомуЯ попытаюсь прояснить несколько вещей:

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ : Это ни в коем случае не исчерпывающий список всего, что происходит.В то время как я старался изо всех сил быть фактическим, я вполне возможно пропустил некоторые важные детали для краткости (эй, по крайней мере, я попытался), и в других случаях я могу просто ошибаться.Применяются обычные предостережения относительно рассмотрения источника.

  • Flash player , предоставляет возможность рендеринга векторной и растровой графики, а также запуска кода пользователя на виртуальной машине.Проигрыватель является ядром флэш-платформы, позволяя контенту работать на нескольких платформах (как правило, без каких-либо модификаций для конкретной платформы). В проигрывателе довольно много API, которые на самом деле являются собственным кодом, но могут вызываться из ActionScript.

  • ActionScript - язык высокого уровня, выбранный для платформы Flash.Есть и другие, особенно Haxe , но они не поддерживаются инструментами Adobe.Существует три версии языка: ActionScript 1, 2 и 3. Первые две были использованы до Flash 9, который представил полностью переписанную виртуальную машину (AVM2) и, таким образом, также представил AS3.Прежние языки работают на более старой виртуальной машине под названием AVM1.Более старый контент, созданный для AVM1, может работать в новых проигрывателях с поддержкой AVM2.Однако они по-прежнему будут работать в режиме AVM1, чтобы сохранить обратную совместимость.Flash на самом деле прекрасно справляется с обратной совместимостью.

  • Flash Professional , также известный как Flash IDE, - это название инструмента для создания флэш-содержимого.Он начинался как способ просто создавать анимацию, но как формат флеш-ролика получил возможности сценариев, так и инструмент.Тем не менее, сценарии уже давно являются дураками этого инструмента.Хотя в последних двух версиях были отмечены улучшения в этой области, она все еще бледнеет по сравнению с другими средами, в большей степени ориентированными на разработчиков.Этот инструмент компилирует только чистые проекты ActionScript, не используется для разработки приложений Flex и, как правило, считается более удобным для разработчиков, чем для разработчиков.

  • Flex - это названиеинфраструктуры корпоративных приложений Adobe.В Flex есть несколько ключевых технологий, и это больше, чем просто функциональная библиотека.Я постараюсь кратко объяснить ключевые технологии фреймворка ниже.Flex SDK на самом деле является открытым исходным кодом и может свободно использоваться для разработки приложений.Однако, хотя он содержит все необходимое для создания приложений Flex, на самом деле он не включает IDE.

    • MXML является декларативным языком.Обычно он используется для декларативного определения представлений, но может использоваться для многих целей.Например, swiz framework использует MXML для декларативного определения зависимостей, используя IoC .Конечно, есть еще много чего, но это выходит за рамки этого ответа.

    • MXMLC & COMPC - два компилятора, используемые для компиляции проектов Flex.Первый используется для компиляции приложений SWF, второй - для компиляции SWC-библиотек.

    • Библиотека ядра включает в себя два стандартных набора компонентов: MX и Spark; первый часто называют Halo. MX является более старым набором компонентов, и, хотя он все еще поддерживается, считается устаревшим и, скорее всего, будет прекращен, когда Spark достигнет четности функций с MX. Однако эти два набора компонентов в значительной степени совместимы друг с другом и могут достаточно хорошо сосуществовать в одном приложении. Другие примечательные предоставляемые функции - это достаточно полные функции доступа к данным и управления ими, как для текстовых данных, таких как XML или JSON, так и для двоичных данных (AMF.)

      Библиотека обычно называется просто Flex или Flex framework .

  • Flash Builder - это среда разработки Adobe для разработки приложений Flex. Хотя его, безусловно, можно использовать для разработки приложений на чистом AS3, его чаще всего используют для разработки приложений Flex. Это достойная среда разработки с большинством функций, доступных в современной среде разработки, но есть популярные альтернативы, такие как PowerFlasher's FDT . Хотя Flex SDK является бесплатным и открытым исходным кодом, Flash Builder является как проприетарным, так и коммерческим программным обеспечением.

4 голосов
/ 28 сентября 2010

Это не совсем так. Вы можете использовать Flash Professional для разработки и написания кода на собственном ActionScript 3, а также для разработки на уровне дизайнера, создания изображений / анимации и т. Д.

Чтобы ответить на ваш вопрос, если вы хотите кодировать в MXML, вам необходимо использовать Flash Builder. Если вы хотите писать на родном AS3, вы можете использовать любой из двух. Оба будут работать, однако, из личного опыта у вас больше свободы при использовании родного AS3. Кроме того, для типа приложения, которое вы хотите создать, производительность, вероятно, будет иметь большое значение, поэтому рекомендуется иметь полный контроль с использованием AS3.

РЕДАКТИРОВАТЬ: Кроме того, если вы знакомы с C ++ или Java, или любой другой объектно-ориентированной, я считаю, что программирование на ActionScript3 будет очень похоже на дома.

3 голосов
/ 27 сентября 2010

IMO, которое говорит само за себя: Flash Professional для дизайнеров, а Flash Builder (Flex) для программистов.

С Flash Builder вы должны изучить как MXML, так и ActionScript. MXML предназначен для декларативного макета графического интерфейса, а ActionScript является языком программирования.

1 голос
/ 28 сентября 2010

«Flash» - это название всей платформы (например, .NET или Java).«Flex» - это название фреймворка, построенного поверх Flash.Таким образом, используя Flex, вы также технически используете Flash.

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

Поскольку вы собираетесь заниматься больше программированием, чем проектированием, Flex больше подходит для вашего приложения, IMO,Для начала взгляните на Learn Flex in a Week .

...