Главная страница. Абонентское обслуживание компьютеров в СПб. ИТ аутсорсинг. ИТ аутсорсинг, абонентское обслуживание компьютеров в спб Полезные статьи посвященные компьютерам и интернету Проектирование и монтаж компьютерных сетей Разработка ПО (программного обеспечения) Продажа лицензионного программного обеспечения Поставка компьютерного оборудования, серверов, комплектующих Контакты. Время работы. Схема проезда
 

Обзор ИТ аудита, консалтинга

Методы ИТ аудита

Полезные статьи

Оставить отзыв

Отзывы клиентов

<< Предыдущая

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

Следующая >>

Полезные статьи | Нюансы использования 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 как отличное средство улучшить работу многих систем, так и прекрасная возможность испортить ее.
Ссылки по теме Технология AJAX Концепция Web 2.0 Никлаус Вирт

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

Новые статьи:
Юзабилити: наука или идеология?
Дом, где найдется все!

<< Предыдущая

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

Следующая >>