QUOTE
Ajax: новый подход к разработке веб-приложений
Статичный веб-дизайн остался в прошлом. Забудьте о кнопке «Refresh». Перезагрузка страницы совершенно неприемлема для современных интернет-приложений, в которых применяется JavaScript и XML.
До недавнего времени веб-приложения значительно уступали обычному программному обеспечению практически по всем параметрам: начиная от внешнего вида, и заканчивая интерактивностью. Но сейчас различия между этими видами ПО становятся все менее заметными. Об эволюции веб-приложений рассуждает Джесс Гарретт (Jesse James Garrett), основатель известной консалтинговой фирмы Adaptive Path. Его статья посвящена новой парадигме разработки интерактивных веб-приложений — Ajax.
Чтобы понять, о чем идет речь, достаточно взглянуть на такие веб-приложения как Google Suggest или, например, Google Maps. Это интерактивные функциональные программы, которые в полной мере взаимодействуют с пользователем, информация на экране обновляется практически мгновенно, не заставляя дожидаться перезагрузки страницы. Это всего лишь два примера нового подхода к разработке веб-приложений, который Джесс Гарретт условно именует «Ajax», что означает «асинхронный JavaScript плюс XML», или, если быть более точным, «асинхронный JavaScript+CSS+DOM+XMLHttpRequest». Новая парадигма веб-программирования несет с собой фундаментальные изменения для всего интернета.
Парадигма Ajax подразумевает использование нескольких технологий, которые при совместном и правильном применении способны обеспечить принципиально новую функциональность веб-приложений.
* дизайн на основе XHTML и CSS, соответствующий рекомендациям W3C;
* динамическое отображение информации и интерактивность на основе DOM;
* обработка данных с использованием XML и XSLT;
* асинхронное получение данных с помощью XMLHttpRequest;
* и JavaScript, который объединяет все это вместе.
Каждая из этих технологий давно известна, но все вместе они дают кумулятивный эффект — это и есть Ajax. Новая парадигма полностью исключает архаичные методы разработки сайтов, в которых применялась классическая модель: клиент отправляет HTTP-запрос, сервер его обрабатывает и возвращает в ответ HTML-страницу. Эта модель, которая органично вписывается в гипертекстовую среду, не очень хорошо подходит для веб-приложений. Парадигма Ajax предусматривает гораздо более грамотный алгоритм обмена данными, как это наглядно показано на схеме.
Асинхронный обмен данными более приемлем с точки зрения юзабилити, потому что пользователю не придется смотреть в пустой экран, дожидаясь перезагрузки страницы. Интерфейс веб-приложения, однажды загрузившись, уже не исчезнет с дисплея. В идеале, пользователь вообще не должен замечать, когда приложение обратилось к серверу, потому что данные подгружаются в фоновом режиме мелкими порциями.
Рассуждая об Ajax, Джесс Гарретт перечисляет интернет-компании, которые применяют этот инновационный подход в веб-приложений. Во-первых, это компания Google, которая разработала в соответствии с принципами Ajax программы Orkut, Gmail, последнюю бета-версию Google Groups, Google Suggest и Google Maps. Многие подходы Ajax реализованы в сервисе для обмена фотографиями Flickr и поисковике A9. Все эти примеры показзывают, что Ajax не только гармоничен с технологической точки зрения, но и может успешно использоваться в реальных приложениях. Это не какая-нибудь очередная «лабораторная» теория, а сугубо практический подход для разработки интернет-программ любого масштаба и предназначения.
Статичный веб-дизайн остался в прошлом. Забудьте о кнопке «Refresh». Перезагрузка страницы совершенно неприемлема для современных интернет-приложений, в которых применяется JavaScript и XML.
До недавнего времени веб-приложения значительно уступали обычному программному обеспечению практически по всем параметрам: начиная от внешнего вида, и заканчивая интерактивностью. Но сейчас различия между этими видами ПО становятся все менее заметными. Об эволюции веб-приложений рассуждает Джесс Гарретт (Jesse James Garrett), основатель известной консалтинговой фирмы Adaptive Path. Его статья посвящена новой парадигме разработки интерактивных веб-приложений — Ajax.
Чтобы понять, о чем идет речь, достаточно взглянуть на такие веб-приложения как Google Suggest или, например, Google Maps. Это интерактивные функциональные программы, которые в полной мере взаимодействуют с пользователем, информация на экране обновляется практически мгновенно, не заставляя дожидаться перезагрузки страницы. Это всего лишь два примера нового подхода к разработке веб-приложений, который Джесс Гарретт условно именует «Ajax», что означает «асинхронный JavaScript плюс XML», или, если быть более точным, «асинхронный JavaScript+CSS+DOM+XMLHttpRequest». Новая парадигма веб-программирования несет с собой фундаментальные изменения для всего интернета.
Парадигма Ajax подразумевает использование нескольких технологий, которые при совместном и правильном применении способны обеспечить принципиально новую функциональность веб-приложений.
* дизайн на основе XHTML и CSS, соответствующий рекомендациям W3C;
* динамическое отображение информации и интерактивность на основе DOM;
* обработка данных с использованием XML и XSLT;
* асинхронное получение данных с помощью XMLHttpRequest;
* и JavaScript, который объединяет все это вместе.
Каждая из этих технологий давно известна, но все вместе они дают кумулятивный эффект — это и есть Ajax. Новая парадигма полностью исключает архаичные методы разработки сайтов, в которых применялась классическая модель: клиент отправляет HTTP-запрос, сервер его обрабатывает и возвращает в ответ HTML-страницу. Эта модель, которая органично вписывается в гипертекстовую среду, не очень хорошо подходит для веб-приложений. Парадигма Ajax предусматривает гораздо более грамотный алгоритм обмена данными, как это наглядно показано на схеме.
Асинхронный обмен данными более приемлем с точки зрения юзабилити, потому что пользователю не придется смотреть в пустой экран, дожидаясь перезагрузки страницы. Интерфейс веб-приложения, однажды загрузившись, уже не исчезнет с дисплея. В идеале, пользователь вообще не должен замечать, когда приложение обратилось к серверу, потому что данные подгружаются в фоновом режиме мелкими порциями.
Рассуждая об Ajax, Джесс Гарретт перечисляет интернет-компании, которые применяют этот инновационный подход в веб-приложений. Во-первых, это компания Google, которая разработала в соответствии с принципами Ajax программы Orkut, Gmail, последнюю бета-версию Google Groups, Google Suggest и Google Maps. Многие подходы Ajax реализованы в сервисе для обмена фотографиями Flickr и поисковике A9. Все эти примеры показзывают, что Ajax не только гармоничен с технологической точки зрения, но и может успешно использоваться в реальных приложениях. Это не какая-нибудь очередная «лабораторная» теория, а сугубо практический подход для разработки интернет-программ любого масштаба и предназначения.
взято отсюда _www.webplanet.ru
Ну как считаете, стоит в это углубляться?
Спустя 17 минут, 9 секунд (19.05.2006 - 17:09) PantiL написал(а):
Возможно и стоит углубиться, но я думаю это было более актуально в 80-е, когда не было таких широких каналов доступа в инет. А с сегодняшними скростями достуа, разве заметно что страница перезагружается? Все происходит мгновенно. Я думаю эта технология найдет свое место только в крупных проектах, где хозяева проектов могут себе позволить тратить огромные деньги на их разработку
Спустя 26 минут, 39 секунд (19.05.2006 - 17:36) vasa_c написал(а):
PantiL, зря ты так. ajax это сила, если с умом конечно использовать.
Timok, если уже нормально с традиционным подходом ладишь, то углубляться стоит несомненно.
Для начала можно здесь немного почитать — _http://dklab.ru/lib/Subsys_JsHttpRequest/
Timok, если уже нормально с традиционным подходом ладишь, то углубляться стоит несомненно.
Для начала можно здесь немного почитать — _http://dklab.ru/lib/Subsys_JsHttpRequest/
Спустя 4 часа, 27 минут, 56 секунд (19.05.2006 - 22:04) Timok написал(а):
Полазил по инету и понял что до аякса мне еще далеко... Пишут технология будущего. Многие веб-мастера кстати этому не радуются: есть мнение что якобы вскоре заказчики будут требовать с разработчиков именно этой технологии, как когда-то flash, после его появления. Пока что, действительно, его используют лишь наиболее крупные проэкты. В Я.Почта, вроде (по крайней мере грузиться быстрее стал). Штука по всей видимости действительно полезная. перезагрузка страницы неважна тем у кого выделенка стоит, но таких меньшинство.
Спустя 2 часа, 11 минут, 31 секунда (20.05.2006 - 00:15) PantiL написал(а):
Вот то и противно, что заказчики будут требовать присутсвие этой технологии в заказе, а толку от нее не так уж много. Хоть идея и очень хорошая.
Но я думаю что PHP разработчик должен работать только с PHP а JS с JS - . А кидаться сразу на все не стоит. Как гласит поговорка, кинешься за зайцами.... и ни х.. не поймаешь.
Надо быть матсером, но в одном напрвлении. ИМХО
Но я думаю что PHP разработчик должен работать только с PHP а JS с JS - . А кидаться сразу на все не стоит. Как гласит поговорка, кинешься за зайцами.... и ни х.. не поймаешь.
Надо быть матсером, но в одном напрвлении. ИМХО
Спустя 2 дня, 8 часов, 42 минуты, 52 секунды (22.05.2006 - 08:58) Nigga написал(а):
QUOTE
кинешься за зайцами.... и ни х.. не поймаешь.
Да, правильно. И зачем столько всякой мути напридумывали? Везде практически одно и тоже реализовано, но языки разные. Не, я не призываю к тому, чтоб язык был один. Одним языком не все можно реализовать. Но былобы несколько - куда приятней. Можно былобы и все знать. А их ведь кучи! И не знаешь, что изучать.........
Спустя 2 часа, 14 минут, 51 секунда (22.05.2006 - 11:13) vasa_c написал(а):
По-моему web-разработчик должен иметь дело и с php и с js и с их взаимодействием.
А ajax это сила в нужных дозах и отнюдь не только для больших проектов.
Я ее в последнее время начинаю активно использовать и ничего там сложного нет.
А ajax это сила в нужных дозах и отнюдь не только для больших проектов.
Я ее в последнее время начинаю активно использовать и ничего там сложного нет.
Спустя 3 часа, 34 минуты, 56 секунд (22.05.2006 - 14:48) Timok написал(а):
QUOTE(Nigga)
Да, правильно. И зачем столько всякой мути напридумывали? Везде практически одно и тоже реализовано, но языки разные. Не, я не призываю к тому, чтоб язык был один. Одним языком не все можно реализовать. Но былобы несколько - куда приятней. Можно былобы и все знать. А их ведь кучи! И не знаешь, что изучать.........
По-моему любой алгоритм, в принципе можно реализовать на любом языке, просто разные языки (точно не знаю, но всего - что-то около тысячи) оптимизированы под разные задачи. Поначалу ИМХО лучше изучать наиболее популярные (php тот же). А когда почувствуешь себя, как сказал PantiL, мастером языка :rolleyes:, можно (даже нужно, наверное) попробывать себя в более сложных (С++ к примеру, Perl какой-нибудь). Сразу-то на все кидаться не надо, лучше постепенно расширять свои знания.