ШКОЛА ВЕБ ДИЗАЙНА

Сверхдинамичные веб-интерфейсы

 

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

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

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

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

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

Все права защищены. Любое копирование материалов строго запреещено

WEB-Design School

E-mail: web-design-1@yandex.ru

Конструктор сайтовuCoz