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

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

В некоторых случаях невозможность индексации поисковыми системами может оказаться достоинством, а не недостатком. Иногда необходимо скрыть те или иные фрагменты от индексации, и AJAX идеально для этого подходит. Например, если нужно проставить на странице ссылки на другие ресурсы, но не хочется, чтобы поисковая система их учитывала, можно динамически генерировать нужные ссылки. Люди, посещающие сайт, смогут перейти по ссылкам, а робот поисковой системы их даже не заметит. Конечно, можно обойтись и простой программой на JavaScript, но использование AJAX позволяет скрыть фрагменты страниц более надежно.

Если на странице используется программа, написанная на языке JavaScript, ее легко могут скопировать конкурирующие сайты. В случае необходимости сокрытия используемых алгоритмов удобнее использовать AJAX, и реализовывать логику с помощью программ на языке PHP, выполняющихся на сервере. Например, программирование на PHP суммы прописью позволяет не раскрывать особенности реализации алгоритма, предоставляя пользователю результат в удобном виде. Конечно, можно применять традиционный способ обмена информацией между клиентом и сервером, но в этом случае не только резко возрастет объем передаваемой информации, но и снизится удобство использования, так как каждый раз при вводе запроса веб-страница будет полностью перерисовываться.

Еще одну известную особенность AJAX также можно использовать для улучшения удобства работы с сайтом. При асинхронном обмене данными не работает обычные средства браузера, позволяющие вернуться на предыдущую страницу. Нередко возврат назад и не нужен, например, если в предыдущей странице была отослана заполненная вами форма. Использование AJAX для заполнения форм позволяет избежать таких ситуаций. Кроме того, так как страница не меняется, все заполненные поля остаются неизменными, и их проще исправить в случае обнаружения ошибки.

Необходимо отметить, что при работе с AJAX возрастает время первоначальной загрузки страницы, так как необходимо загрузить программы на JavaScript. Конечно, это компенсируется более быстрой работой в дальнейшем, но иногда время самой первой загрузки является слишком важным, и от использования AJAX приходится отказаться. Также очевидным недостатком является отсутствие кэширования асинхронных ответов сервера. Кроме того, после отправки запроса на сервер практически невозможно проконтролировать состояние этого запроса. Если ответ от сервера не пришел, никаких ошибок не выдается. Возникающие проблемы можно решить, но это потребует значительных дополнительных усилий, и часто не будет экономически оправдано. Технологию AJAX обязательно стоит применять, но всегда нужно помнить о ее особенностях и ограничениях.


Реклама

 
Статьи  Статьи
При копировании информации,
ссылка на источник (phpcode.ru) желательна
© 2007 phpcode.ru