Каталог статей
Поиск по базе статей  
Статья на тему Интернет » Интересное в сети » Нюансы использования AJAX

 

Нюансы использования AJAX

 

 

AJAX

AJAX — это возможность веб-страницы пообщаться с сервером, оставаясь при этом все той же самой страницей (не хочется пересказывать подробности технологии, их вполне можно прочитать здесь). Очень здорово, теперь мы можем подгружать новые данные в страницу, не перегружая ее целиком (а перегружая ее часть). Это настоящий Web 2.0, добро пожаловать.

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

загрузка...

 

 

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

Загрузка контента с помощью AJAX разрывает связь между адресом страницы и ее содержимым

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

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

Может показаться, что проблема несколько надумана — ну не будут работать прямые ссылки, велика ли беда? Достаточно велика, если вспомнить, что фактически весь веб-инструментарий опирается на идею контента, доступного по ссылке. Само понятие URL (Uniform Resource Locator) несет в себе эту идею: ссылка — это путь к ресурсу. Что делает браузер, когда пользователь нажимает кнопку «Назад»? Возвращает пользователя на предыдущую страничку. Если на странице происходили какие-то изменения с помощью AJAX, кнопка не сработает, пользователь не вернется к предыдущему шагу, как он хотел бы. Нет, формально все правильно, страничка — это одно, ее содержимое — это другое, но как быть несчастному пользователю, не подозревающему, что произойдет? Более того, несчастный пользователь, возможно, поймет, что что-то прошло не так, и очень захочет вернуться к прежнему состоянию, но увы — кнопка «Вперед» тоже не ведет его к прежнему состоянию.

Стандартная функциональность браузера может работать не так, как этого ожидает пользователь

Что происходит, когда нажимается кнопка «Обновить»? Забудьте о всех изменениях, произошедших на странице с помощью AJAX, страница будет перезапрошена и перезагружена. Что пользователь внесет в «Закладки» или «Избранное», если у него больше нет адреса для того, что он видит перед собой?

Для некоторых «пользователей» придется дублировать функциональность, выполненную на AJAX

Это еще не все. Знаете, кто по-настоящему расстроится, не увидев вашего замечательного контента по ссылке? Поисковые машины. Извините, это не пользователи, и у них не браузеры, они не нажимают на кнопки, не вызывают эти хитрые функции JavaScript и не увидят ничего, кроме того, что сервер вернет по ссылке. Да, это означает, что все модные меню нужно дублировать обычными ссылками. Да, это означает, что вместе с новым продвинутым интерфейсом нужно где-то повторить и классическую дедовскую схему навигации. Если, конечно, вам важно мнение поисковиков о вашем сайте, а заодно, конечно, и бедолаг-пользователей, которые зашли на ваш сайт с отключенным JavaScript.

А вы ведете статистику по своему сайту? Вам интересно, откуда и куда переходят посетители, какие страницы наиболее посещаемы? А, вы используете счетчики третьих компаний, таких как «Рамблер», «Хотлог», «Майкаунтер», «Бигмир»? Тогда не обижайтесь: статистика больше не отражает реальной картины. Вызов счетчика связывается с адресом страницы, в рамках которой он был вызван. Разорвана связь между адресом и контентом — счетчик уже не в состоянии выполнять свои функции адекватно.

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

Небольшой экскурс в историю. Идея сделать страницу более гибкой, разбив ее на логические части, которые можно было бы независимо перегружать, далеко не нова. В свое время HTML предлагал фреймы как решение этой проблемы. Что интересно, проблемы эта технология имела очень похожие, а именно: ссылка не вела к контенту. Если быть совсем точным, то проблема была даже обратной: у каждого элемента контента был свой адрес. Но, во-первых, он был скрыт в недрах фреймовой структуры (что осложняло выделение прямой ссылки на нужный контент), а во-вторых, прямая ссылка вела исключительно на этот контент, при этом остальные логические части страницы терялись. Время показало, что фреймы как технология имеют очень узкую специфичную область применения и практически исчезли из Интернета.

Итак, AJAX — не панацея и не «серебряная пуля», но ведь должно же быть место этой технологии, раз вокруг нее столько шума и на нее такая мода. Где же? Во-первых, любое не публичное место, недоступное поисковикам и вообще другим людям, а таких мест достаточно много. Администраторская панель любой CMS, интерфейсы веб-почты, любые интерфейсы, защищенные паролями, — персонализированные сервисы, все, что доступно пользователю только под залог логина и пароля и, следовательно, другим пользователям недоступно. Все те места, где связь адреса страницы с контентом попросту не нужна, например из соображений приватности или в концепции общей защиты каких-либо данных. Во-вторых, AJAX можно использовать в любом не связанном с контентом месте страницы. Подгрузка полнофункционального редактора, вставка смайлика, список последних сообщений с форума. Все, что не является в полной мере контеном и не связано логически с адресом страницы.

Никлаус Вирт (о котором, конечно, тоже можно узнать на «Википедии») на вопрос, что он считает важным в организации информационных систем, ответил примерно следующее: «Мы ратуем за хорошо документированную, четкую, логичную декомпозицию системы, представленную множеством тщательно сформулированных и детально описанных непротиворечивых интерфейсов». Осмысливая эту идею в контексте интернет-страниц, можно сказать, что адреса страниц, URL, — это интерфейсы информации, контента, средства связи множества информационных систем, начиная от сложнейших поисковых машин и заканчивая школьником, нетвердо набирающим сакраментальные <a href=. Это отличные, тщательно описанные интерфейсы, которые работают. И AJAX — как отличное средство улучшить работу многих систем, так и прекрасная возможность испортить ее.

Ссылки по теме




Статья получена: hostinfo.ru
загрузка...

 

 

Наверх


Постоянная ссылка на статью "Нюансы использования AJAX":


Рассказать другу

Оценка: 4.0 (голосов: 16)

Ваша оценка:

Ваш комментарий

Имя:
Сообщение:
Защитный код: включите графику
 
 



Поиск по базе статей:





Темы статей






Новые статьи

Противовирусные препараты: за и против Добро пожаловать в Армению. Знакомство с Арменией Крыша из сэндвич панелей для индивидуального строительства Возможно ли отменить договор купли-продажи квартиры, если он был уже подписан Как выбрать блеск для губ Чего боятся мужчины Как побороть страх перед неизвестностью Газон на участке своими руками Как правильно стирать шторы Как просто бросить курить

Вместе с этой статьей обычно читают:

AJAX: что скрывается за этими буквами?

AJAX - новый модный термин, знание которого причисляет человека к сонму людей, идущих не то чтобы в ногу со временем, а даже слегка впереди. Что скрывается за этими буквами? Аббревиатура расшифровывается как Asynchronous JavaScript + XML (асинхронный JavaScript+XML).

» Продвижение и оптимизация - 1584 - читать


Мастерство использования robot .txt файлов

Упростить работу по оптимизации можно используя файлы robots.txt. Они представляют собой простые файлы, указывающие роботам, паукам поисковой системы, какие файлы индексировать в базу данных, а какие нет. В данной статье будут представлены доказательства важности robots.txt для процесса оптимизации, а также возможные последствия не использования или использования неверно составленных файлов robots.txt.

» Продвижение и оптимизация - 2188 - читать


Недостатки использования идентификаторов сессий при продвижении сайтов

Идентификатор сессий представляет собой уникальный параметр вида &session_id= (&c_id=), который при каждом посещении пользователем страницы добавляется к ее url. Основными предназначениями идентификаторов сессий является возможность сбора точной информации о том, как вел себя тот или иной пользователь на сайте (электронные биржи и крупные интернет-магазины), а также сохранение серверной памяти. Вместе с тем, идентификаторы сессий могут явиться причиной некоторых серьезных п ...

» Продвижение и оптимизация - 2818 - читать


AJAX для PHP&nb p;&mda h; легко

Серверный язык PHP уже давно стал одним из признанных лидеров в сфере веб-разработок. Многие специалисты любят его за относительную простоту и большие возможности. В то же время бум Web 2.

» Интересное в сети - 1938 - читать


Ajax и&nb p;браузеры: проверка совместимости

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

» Интересное в сети - 3131 - читать



Статья на тему Интернет » Интересное в сети » Нюансы использования AJAX

Все статьи | Разделы | Поиск | Добавить статью | Контакты

© Art.Thelib.Ru, 2006-2024, при копировании материалов, прямая индексируемая ссылка на сайт обязательна.

Энциклопедия Art.Thelib.Ru