Есть ли недостатки в использовании AJAX? - PullRequest
3 голосов
/ 09 мая 2009

Есть ли недостатки в использовании AJAX?

Ответы [ 11 ]

10 голосов
/ 09 мая 2009

Нет интеграции с историей браузера.

8 голосов
/ 09 мая 2009

Если вы создаете сайт, для которого требуется Ajax для просмотра содержимого и выполнения задач, у вас есть несколько основных проблем. Содержимое / функции только для Ajax невидимы / недоступны для:

  • поисковых ботов
  • много мобильных телефонов
  • людей с отключенным Javascript

и т. Д. И т. Д.

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

Прогрессивное улучшение включает в себя сначала создание вашего сайта с использованием bare-bone (X) HTML на принципах, подобных REST (по крайней мере, в той степени, в которой требуются запросы POST для изменений состояния) , Простая семантическая разметка; забудьте о CSS и Javascript.

Первый шаг - это сделать это правильно, и весь ваш сайт (или столько, сколько имеет смысл) будет работать таким образом для поисковых роботов и Lynx-подобных пользовательских агентов.

Затем добавьте визуальный слой : CSS / graphics / media для визуальной полировки, но не вносите существенных изменений в исходную (X) разметку HTML; позволяют оригинальному текстовому сайту оставаться нетронутым и функционировать. Держите разметку в чистоте!

Третье - добавить поведенческий слой : Javascript (Ajax). Предлагайте вещи, которые делают работу быстрее, плавнее, приятнее для пользователей / браузеров с поддержкой Ajax JS ... но только для тех пользователей.

2 голосов
/ 09 мая 2009

Асинхронизированный доступ к данным означает, что труднее заставить вещи работать правильно при каждой комбинации действий.

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

2 голосов
/ 09 мая 2009

Совместимость браузера.

1 голос
/ 09 мая 2009

делает действительно трудным функциональное тестирование.

1 голос
/ 09 мая 2009

Пользователь может не знать через клиента, что была выполнена операция AJAX, или если она не удалась. Может быть трудно восстановиться после ошибок на стороне клиента, вызванных неудачным вызовом AJAX.

0 голосов
/ 09 мая 2009

В конечном счете, проблема в том, что он представляет собой сложность. Большинство проблем, присущих сайтам AJAX (создание закладок, история браузера, постепенная деградация и т. Д.), Можно преодолеть с помощью хорошего дизайна, поэтому у хорошо спроектированного сайта с поддержкой AJAX нет никаких недостатков. Проблема в том, что создание такого сайта требует много дизайна и очень хороших разработчиков, которые могут управлять сложностью.

0 голосов
/ 09 мая 2009

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

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

Ограничьте ваше приложение разумным количеством браузеров и версий браузеров.

Совместимость с Crossbrowser может сделать вашу жизнь несчастной.

0 голосов
/ 09 мая 2009

Да, Ajax не поддерживается старыми браузерами или браузерами, в которых не включен javascript. В настоящее время большинство браузеров поддерживают Ajax - даже мобильный браузер, такой как на iPhone.

Самой большой проблемой для меня является то, что Ajax добавляет сложности проекту.

Существует множество библиотек ajax, которые, как предполагается, облегчают жизнь. В большинстве случаев эти библиотеки просты в использовании для создания приложения «Hello World». Одной из основных проблем, которая в большинстве случаев поддерживается Ajax-библиотеками, является обработка ошибок (ведение на стороне клиента).

Для более крупных проектов разработчик должен понимать внутреннюю часть библиотеки, которая добавляет новую дисциплину обучения в проект.

0 голосов
/ 09 мая 2009

Требуется JavaScript. И вы должны признать своим друзьям, как вы "Web 2.0". Вместо того, чтобы быть твердым ядром старой школы: для меня это все таблицы для разметки и рамки для навигации.

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