Каковы (технические) плюсы и минусы Flash по сравнению с AJAX/JS?

StackOverflow https://stackoverflow.com/questions/52140

  •  09-06-2019
  •  | 
  •  

Вопрос

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

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

Есть ли техническая причина, по которой следует предпочесть одну из технологий другой?Под «техническим» я подразумеваю производительность, безопасность, портативность/совместимость и тому подобное.Я не имею в виду такие аспекты, как непрограммистский способ разработки во Flash или имеет ли смысл переключать приложение с одного на другое.

Как я только что объяснил в другом вопросе, Мне кажется, что JS находится далеко впереди по доле рынка, и мне интересно, не упускаем ли мы какой-то важный момент, если будем придерживаться Flash.

Это было полезно?

Решение

  • Правильно спроектированные приложения AJAX более удобны для Google, чем Flash.
  • Правильно спроектированные приложения AJAX легче поддаются глубокому связыванию, чем Flash.
  • AJAX не требует плагина (Flash довольно распространен, так что это не имеет большого значения)*
  • AJAX не контролируется одной компанией, как Flash.

Отредактировано, чтобы добавить:* За исключением iPhone, как отмечает Абду.

Другие советы

В дополнение к тому, что говорили другие, Flash ограничен «прямоугольником» и не может быть добавлен на обычную HTML-страницу ненавязчивым образом.

@Gulzar Я думаю, что когда больше браузеров будут поддерживать тег видео, например Mozilla 3.1, мы увидим еще большее распространение ajax/js вместо Flash.

  • Adobe Actionscript — статически типизированный язык, Javascript — динамически типизированный.В зависимости от вашей точки зрения, это может быть хорошо или плохо.
  • С Javascript/HTML/CSS вы попадете в ад кроссбраузерной совместимости, особенно если вы хотите поддерживать старые браузеры.Это можно смягчить с помощью доступных библиотек, но это все равно большая головная боль.При использовании Flash вы пишете код один раз, и он работает во всех браузерах.
  • Даже при наличии доступных библиотек пользовательские элементы управления Flash просто более продвинуты, чем все, что вы можете найти в мире Javascript/HTML.В Javascript вы не найдете ничего, что могло бы сравниться с простотой и мощью пользовательского элемента управления с привязкой к данным, который предоставляет Flash.

Я не понимаю, почему Javascript имеет большую «долю рынка», чем Flash.Практически у каждого, у кого есть веб-браузер, установлен плагин Flash.Мне было бы любопытно узнать, сколько людей отключают Javascript, но имеют плагин Flash.

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

Это решение также во многом зависит от того, что делает ваше приложение и какая у вас база установок.

Редактировать: Я вижу, что люди упоминали, что iPhone не поддерживает Flash.Я ожидаю, что это изменится с установочной базой iPhone — Adobe было бы сумасшедшим, если бы не поддерживало это.

JS и Flash широко представлены в сети, но их возможности пересекаются.Одна область, которой пока не хватает JS, — это рендеринг видео.

Flash при правильном использовании позволяет легко локализовать и интернационализировать.

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

Я думаю, что Flash следует ограничить онлайн-играми, видео и анимацией.В противном случае используйте html и Ajax.Это веб-стандарт, поддерживаемый практически всеми устройствами.AFAIK, iPhone не поддерживает Flash.Это быстрорастущий сегмент, который вы уже блокируете.Пусть это будет простым и эффективным.

Хотя Flash широко распространен в настольных браузерах, поддержка мобильных устройств очень ограничена (flash lite?да правильно).Я очень расстраиваюсь, когда ищу ресторан на своем телефоне и обнаруживаю, что весь сайт основан на флэш-памяти, и я даже не могу получить номер телефона или адрес!

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

Лично я бы постарался использовать как можно больше Ajax, прежде чем переходить к чему-то вроде Flash.С точки зрения пользовательского интерфейса, он лучше, поскольку элементы управления и базовая разработка немного более развиты.А Звуковой менеджер проект является хорошим примером эффективного использования небольшого количества Flash при сохранении остального в Javascript.

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

Поскольку я не могу принять два ответа, я объединю их. Крайст Апчерч и 17 из 26 ответы в моем собственном посте.Я думаю, эти двое вместе в значительной степени суммируют то, что я хотел знать.Спасибо ребята!

Если вы часто имеете дело с полигонами, то Flash все равно проще программировать и отлаживать.AJAX предлагает множество библиотек для обработки полигонов, но чем больше библиотек использует ваше приложение, тем медленнее оно работает.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top