среда, 3 сентября 2008 г.

Аякс с чего начать

31/08/2008

Сегодня хочу поговорить о ява технологиях в веб строительстве, про Аякс.. Не новых, а некогда забытом старом, Вики как всегда очень хорошо помогает разобраться что это, и с чем это едят..

AJAX
Материал из Википедии — свободной энциклопедии

AJAX (от англ. Asynchronous Javascript and XML — «асинхронный JavaScript и XML») — это подход к построению интерактивных пользовательских интерфейсов веб-приложений, заключающийся в «фоновом» обмене данными браузера с веб-сервером. В результате при обновлении данных веб-страница не перезагружается полностью, и веб-приложения становятся более быстрыми и удобными.

По-английски AJAX произносится как эй-джэкс, по-русски довольно распространено ая́кс.

Технология

AJAX — это не самостоятельная технология, а концепция использования нескольких смежных технологий. AJAX базируется на двух основных принципах:

* использование технологии динамического обращения к серверу «на лету», без перезагрузки всей страницы полностью, например:

* с использованием XMLHttpRequest (основной метод);
* через динамическое создание дочерних фреймов;
* через динамическое создание тега .

* использование DHTML для динамического изменения содержания страницы;

В качестве формата передачи данных обычно используются JSON или XML.

История

Впервые термин AJAX был публично использован 18 февраля 2005 года в статье Джесси Джеймса Гарретта (Jesse James Garrett) «Новый подход к веб-приложениям». Гарретт придумал термин, когда ему пришлось как-то назвать новый набор технологий, предлагаемый им клиенту.

Однако в той или иной форме многие технологии были доступны и использовались гораздо раньше, например в подходе «Remote Scripting», предложенным компанией Microsoft в 1998 году, или с использованием HTML элемента IFRAME, появившегося в Internet Explorer 3 в 1996 году.

AJAX стал особенно популярен после использования его компанией Google в сервисах Gmail, Google Maps и Google Suggest.

Преимущества

* Экономия трафика

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

* Уменьшение нагрузки на сервер

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

* Ускорение реакции интерфейса

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

Недостатки

* Интеграция со стандартными инструментами браузера

Динамически создаваемые страницы не регистрируются браузером в истории посещения страниц, поэтому не работает кнопка «Назад» предоставляющая пользователям возможность вернуться к просмотренным ранее страницам, но существуют скрипты которые могут решить эту проблему.
Другой недостаток изменения содержимого страницы при постоянном URL заключается в невозможности сохранения закладки на желаемый материал. Частично решить эти проблемы можно с помощью динамического изменения идентификатора фрагмента (части URL после #), что позволяют многие браузеры.

* Динамически загружаемое содержимое недоступно поисковикам (если не проверять запрос, обычный он или XHttpRequest)

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

* Старые методы учёта статистики сайтов становятся неактуальными

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

Альтернативы

Flash стек технологий в виде ActionScript 3, Flex, Flash Remoting составляет технологическую основу так называемых RIA (Rich Internet Applications) активно продвигаемых Macromedia (теперь часть Adobe). RIA являются главными конкурентами Ajax.

еще выкладываю сюда очень интересный учебник вместо с кодами программ, который посвящен Аяксу
Название книги “AJAX и PHP разработка динамических приложений” , Кристиан Дари, книга научит работать с Аяксом в связке php + ajax + mySQl

Вот ссылки

AJAX и PHP. Разработка динамических веб-приложений.2006

коды к учебнику

программа для чтения книги

Комментариев нет: