Каковы (технические) плюсы и минусы Flash против AJAX / JS? - PullRequest
6 голосов
/ 09 сентября 2008

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

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

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

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

Ответы [ 11 ]

4 голосов
/ 09 сентября 2008

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

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

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

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

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

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

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

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

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

2 голосов
/ 09 сентября 2008

JS и Flash широко представлены в Интернете с перекрывающимися возможностями. JS все еще не хватает в области рендеринга видео.

1 голос
/ 09 сентября 2008

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

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

0 голосов
/ 30 ноября 2012

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

0 голосов
/ 12 сентября 2008

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

0 голосов
/ 10 сентября 2008

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

0 голосов
/ 09 сентября 2008

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

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

0 голосов
/ 09 сентября 2008

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

...