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

Москва, ул.Миклухо-Маклая, 23А
тел.: (495) 787-4250
факс: (495) 935-3200
info@netfort.ru

Группа компаний "Нетфорт" специализируется на разработке и продвижении современных информационных технологий и программного обеспечения для бизнеса.

подробнее |

Система “e-Fort”

Автоматизация публикаций, быстрое и простое обновление информации на сайте, удобное управление каталогами.

подробнее |

Выберите дату:

1

2

3

4

5

6

7


8

9

10

11

12

13

14


15

16

17

18

19

20

21


22

23

24

25

26

27

28


29

30

31

Что такое Ajax? Технология или термин...

Ajax - это не технология сама по себе, а термин, относящийся к использованию нескольких технологий вместе.

Традиционные веб-приложения, по существу, подают заполненные пользователями формы на веб-сервер. Веб-сервер реагирует на запрос, высылая на браузер пользователя код новой веб-страницы. Поскольку сервер должен подавать новую страницу при каждом запросе, приложения работают медленнее и более нескладно, чем их “родные”, “десктопные” аналоги.

Приложения на основе Ajax, с другой стороны, могут отсылать на веб-сервер запросы, извлекающие только те данные, которые требуются в данный момент, обычно используя SOAP или некоторые другие диалекты веб-сервисов на XML-основе.

На стороне же клиента ответы веб-сервера обрабатываются при помощи языка JavaScript.

Результатом применения подобной техники является более "чуткий" интерфейс, поскольку количество данных, которыми обмениваются веб-браузер и веб-сервер, сильно снижается. Время обработки запросов веб-сервером тоже экономится, поскольку большинство работы проводится на клиентской стороне.

 

Ajax - это скорее естественная стадия развития уже существующих техник, чем нечто совершенно новое.

Однако в рамках этого развития, некоторые вещи в следующих ключевых сферах заметно отличаются от того, что было раньше:

  1. Ajax предоставляет механизм смешивания и сопоставления XML и XHTML.
  2. Ajax значительно снижает необходимость постоянного извлечения материала с сервера (здесь можно привести в качестве сравнения удаленный iframe-скриптинг).
  3. Ajax преодолевает некоторые "узкие места" (bottlenecks) с точки зрения скорости обработки данных, жертвами которых стали традиционные веб-разработки. В большинстве случаев сайт на Ajax-основе загрузится быстрее, чем аналогичный традиционный вебсайт.
  4. Если сайт разработан правильно, Ajax значительно снижает время начальной загрузки.

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

Нужно также ясно представлять себе, что Ajax - это не технология сама по себе, а скорее техника, хорошо сочетающаяся с другими технологиями и техниками. Например, с XML, DHTML, CSS и XHTML.

Фактически, Ajax на самом деле - это DHTML с внедренным в него объектом xmlhttprequest. Удивительно, как один-единственный объект может изменить всю эту область.

В соответствии с нынешним положением вещей на фронте Ajax, мы имеем две почти выкристаллизовавшихся крайности.

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

На другом конце расположились все мелкие примеры, перетекающие из места в место в Сети, и показывающие, как загружать XML в какой-либо документ или производить обработку форм на Ajax-основе.

Хотя оба конца спектра играют определенную роль в развитии Интернета, я не думаю, что приципы Ajax и наилучшие способы их использования не были переданы надлежащим образом.

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

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

До сегодняшнего дня, я несколько раз упоминал термин "Ajax", но не описал центральный объект, делающий Ajax Ajax-ом.

В сердце Ajax содержатся объект xmlhttprequest и его эквивалент от Microsoft - ActiveX.

Именно этот объект делает возможной асинхронную передачу данных.

Если вы не совсем ясно прдеставляете себе, что такое асинхронность, то это, кратко говоря, способность управлять процессами независимо от других процессов. Синхронность, антоним асинхронности, означает, что процессы зависят друг от друга. Чтобы проиллюстрировать эту концепцию, давайте разберем классический сценарий работы с веб-страницей.

Допустим, у нас имеется страница А, и на этой странице расположено несколько элементов, включая пару скриптовых и стилевых тегов. При синхронной пересылке данных, скриптовый тег должен быть интерпретирован (parsed) раньше, чем следующий за ним элемент. Таким образом, следующий элемент зависит от интерпретирования предыдущего скриптового тега. Фактически, мы создаем "бутылочное горлышко" в связи между веб-страницей и веб-браузером. Стилевые теги и ссылочные элементы в заглавной части документа создают тот же самый вышеупомянутый эффект. Их нужно интерпретировать один за другим - до обработки других элементов страницы.

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

Следовательно, это означает, что от 2 до 4 картинок или других элементов страницы могут загружаться параллельно. Тем не менне, еще до того, как начинается этот процесс, система должна интерпретировать все, что заключено между head-тегами, и это может значительно замедлить загрузку веб-страниц.

Особенно если вы используете множесто тегов CSS или JavaScript.

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

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

Суть этой техники - использовать как можно меньше JavaScript в начальных стадиях загрузки, а затем "затолкать" все теги, имеющие отношение к секции head, включая остальные теги JavaScript или CSS и т. п., в объект xmlhttprequest.

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

и другие |

Все замечания и пожелания присылайте на info@netfort.ru
Все права защищены и охраняются законом. © 2002-2008 НЕТФОРТ