вы гоните, Ajax - это мусор!

  • Автор темы glukh
  • Дата начала
Статус
Закрыто для дальнейших ответов.
G

glukh

#1
Сама идея AJAX, тривиальна, суть - не таскать одни и те же данные многократно в рамках одной сесии. Реализация поддерживаемая некоторыми браузерами при помощи XMLHttpRequest, это что для слабоумных чтоли? Все браузеры которые поддерживают DHTML имеют возможность динамического обмена данными с сервером без перегрузки основного окна. Как? http://86.102.0.202/freechat/ например вот так. Я чесно говоря не спец по сайторазработке, но когда пришлось столкнуться с этим делом, то второй сайт который я сделал себе лично уже содержал реализацию динамического обмена данными с сервером. Что касается чатов, форумов, веб интерфейса к е-майл и вообще всего что требует постоянной работы с сервером, то подход динамического обмена данными позволяет реализовать намного больше чем чат, он позволяет делать полноценные приложения, где браузер занимает место интерфейса и хранилища информации в рамках данной сессии.
 
?

????

#2
<!--QuoteBegin-glukh+29:08:2006, 08:29 -->
<span class="vbquote">(glukh @ 29:08:2006, 08:29 )</span><!--QuoteEBegin-->идея AJAX
[snapback]42806" rel="nofollow" target="_blank[/snapback]​
[/quote]
ты же сам сказал: Ajax - идея, а не средство<!--QuoteBegin-glukh+29:08:2006, 08:29 -->
<span class="vbquote">(glukh @ 29:08:2006, 08:29 )</span><!--QuoteEBegin-->Все браузеры которые поддерживают DHTML имеют возможность динамического обмена данными с сервером без перегрузки основного окна. Как? [snapback]42806" rel="nofollow" target="_blank[/snapback]</div>[/quote]
в FireFox не работает
 
S

SOFTOBZOR.ru

#4
Ну давай наваяляй такой интерфейс http://pro.mail.ru
Правой и левой кнопочкой пощелкай (когда войдеш в систему), попробуй драгэнддроп поделай.
И я тебе медаль на пупок повешу если ты это сделаеш с помощью DHTML
Ты сначало ответь на вопрос что такой Ajax и пойми суть, а потом делай свои категоричные заявления
 
A

Andrew Stephanoff

#5
удивил iframe'мом ;) это не ново и уходит в прошлое
зря ругаешь xmlHttpRequest -- используя iframe ты создаешь новый объект браузера и засоряешь историю. Это для тебя отправка данных невидима, на самом деле происходит обычный submit формы... геммороя с твоим методом и объем кода больше, чем используя xmlHttpRequest.
 
G

Gisma

#6
хм... все едино Ajax - лишь идея... Не нравится XMLHttpRequest используй что-то свое.
Для: Andrew Stephanoff
Iframe можно заменить на script ;) Тоже решение
 
G

glukh

#7
<!--QuoteBegin-SOFTOBZOR.ru+14:09:2006, 15:48 -->
<span class="vbquote">(SOFTOBZOR.ru @ 14:09:2006, 15:48 )</span><!--QuoteEBegin-->И я тебе медаль на пупок повешу если ты это сделаеш с помощью DHTML
[snapback]43855" rel="nofollow" target="_blank[/snapback]​
[/quote]
А ты думаешь что всё это драг анд дропство на Сях чтоли написано? ;) Ну тогда разачарую - оно написано ИМЕННО НА DHTML'е.

<!--QuoteBegin-SOFTOBZOR.ru+14:09:2006, 15:48 -->
<span class="vbquote">(SOFTOBZOR.ru @ 14:09:2006, 15:48 )</span><!--QuoteEBegin-->Ты сначало ответь на вопрос что такой Ajax и пойми суть, а потом делай свои категоричные заявления
[snapback]43855" rel="nofollow" target="_blank[/snapback]​
[/quote]
из самого первого поста:
<!--QuoteBegin-glukh+29:08:2006, 11:29 -->
<span class="vbquote">(glukh @ 29:08:2006, 11:29 )</span><!--QuoteEBegin-->идея AJAX, тривиальна, суть - не таскать одни и те же данные многократно в рамках одной сесии
[snapback]42806" rel="nofollow" target="_blank[/snapback]​
[/quote]

ну и в конце концов:
http://ru.wikipedia.org/wiki/Ajax

ЗЫ так к слову, я то как раз не только знаю как можно сделать, но и реально делаю, и поэтому меня сложно хоть чем то удивить.
 
S

SOFTOBZOR.ru

#8
А ты думаешь что всё это драг анд дропство на Сях чтоли написано? smile.gif Ну тогда разачарую - оно написано ИМЕННО НА DHTML'е.
Я тебя тоже господин "великолепный" разочарую, мозг это такой аппарат логическая структура которого настроена на более широкое мышление чем мы тут наблюдаем у вас.
Я тут вижу что кто-то рогом уперся в стену и дальше нее идти не желает, следуя из следующего заявления:
вы гоните, Ajax - это мусор!
Порабы расширять кругозор, или хотя бы задуматся почему все солидные конторы типа http://mail.ru http://yahoo.com http://microsoft.com http://cnews.ru продолжать можно долго.
Успешно перевили свои ресурсы на этот механизм, или ты думаеш они о DHML ни чего не знают.
DHML - это мусор! который отжил свой век как и к примеру - php3
 
G

Gisma

#9
2 All
Я бы постарался на Вашем месте воздерживаться от крепких заявлей
Для: glukh
На той же страничке википедии написано что Аjax базируется на нескольких принципах (DHTML - включен), кстати и по драг`N`дропу где это прочитать можно ?;)
Для: SOFTOBZOR.ru
Так же я был бы помягче и тут DHTML - совсем не мусор, а то что компании перелазить начали на использование Ajax- так они вынуждены ввиду популярности последнего (у DHTML и php аналогичные истории были:D)
 
G

glukh

#10
Есть такая штука, называется DOM - Document Object Model. Это - модель того, что из себя представляет документ, из чего он состоит и как это отобразить на некоей повержности. В модели этой есть картинки, таблицы, текст, всякого рода выравнивания, модификаторы шрифтов, сопутствующие структуры для форматирования всего этого и вообще - очень много чего.

На базе этой модели, сделана спецификация, реально используемая и работающаяя - HTML. Это HyperText Markup Language, который является языком описания. Все объекты описываемые HTML документом упорядочены в иерархическом порядке - дереве объектов, в самом верху которого лежит документ. Этот документ и отображают браузеры.

Динамический HTML, это расширение возможностей HTML за счёт введения в язык специальных директив - скриптов, которые по сути своей являются программами изменяющими состояние объекта документ - создающие и/или удаляющие элементы в иерархии и изменяющие их свойства. Как правило для управления документом скрипт использует синтаксис специально для этого разработанного языка JavaScript, но некоторые браузеры понимают также директивы на других языках - IE например понимает ещё и VBScript. При этом сами скрипты занимают точно такое же положение в структуре документа как и все остальные элементы.

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

Сервер же просто отдаёт по сути файл с небольшими коментариями к нему. Что за файл необходимо отдать на данный, конкретный запрос клиента, сервер узнаёт по тем сведениям что сообщает сам клиент. Механизмов для отправки информации серверу несколько, через параметры заголовка - cookies'ы, через адрес ресурса методом GET, в теле запроса - методом PUT, что впрочем не мешает совмещать все эти методы.

На сервере перед отправкой файла может быть запущена программа - HyperText Processor, которая в зависимости от полученных данных от клиента может внести коррективы в отправляемый файл - один из вариантов такого гипертекстового процессора - PHP, другой от микрософт - ASP. PHP использует в качестве языка специально разработанный для этого язык, ASP же использует синтаксис скриптовых языков как JavaScript или VBScript, но в данном случае, скрипты ASP получают не документ в самом верху иерархии, а несколько объектов таких как Server, Response, Request. Важное отличие динамики на стороне сервера от динамики на стороне клиента: на клиенте скрипты ВСЕГДА работают с документом под браузером; на сервере же, скрипты работаю с входным и выходным потоками, тоесть на вход скрипт получает значения от клиента, на выходе отдаёт тупо файл.

Таким образом, ВСЁ ЧТО МЫ МОЖЕМ УВИДЕТЬ - показывает нам браузер используя DHTML!!!
Любая активность которая не связана с формированием ответа (читай сборкой файла) - это DHTML!!! Картинка ползает по экрану? - DHTML! Мышкой таскаем ссылки, строки, картинки, окошки? - это DHTML!!!! Нет HTML - нет документа, есть HTML - есть документ. Если браузер поддерживает JavaScript, то наш HTML документ автоматически превращается в DinamicHTML. Вот и всё! И где логика в высказывании "DHTML - мусор, так как Ajax - значительно круче!" я не пойму.

Ajax - это такая же модель как и DOM, не в том смысле что это её аналог или подобие, а в том смысле что это НЕ ТЕХНОЛОГИЯ и НЕ СПЕЦИФИКАЦИЯ! Это принцып, идея, механизм работы клиента с сервером. Суть этого механизма - при очередном выборе пользователя не убивать всякий раз документ в браузере а используя возможности DHTML изменять его, получая с сервера необходимые для этого данные! Механизм получил имя Ajax сравнительно недавно, так как значительно раньше уже были сайты использующие этот подход. В частности, я лично этим занимался. Про Ajax я узнал от своего друга, когда похвастался удобством очередного своего сайта - он меня и просветил, сказав, что этот подход уже успел получить имя - Ajax.

<!--QuoteBegin-SOFTOBZOR.ru+15:09:2006, 10:18 -->
<span class="vbquote">(SOFTOBZOR.ru @ 15:09:2006, 10:18 )</span><!--QuoteEBegin-->Порабы расширять кругозор, или хотя бы задуматся почему все солидные конторы типа [snapback]43902" rel="nofollow" target="_blank[/snapback]</div>[/quote]
на этом месте у меня жена даже поугорала! :blink: тоже мне пример для подрожания! солидные конторы!!! ;))) я это изречение на стенку повешу за подписью - SOFTOBZOR.RU!

Gisma
Что касается драг анд дропа, то я не разбирался как это можно сделать, но на вскидку вешаем обработку на документ по onMouseMove и ловим onClick на элементах которые нужно таскать, после по клику сообщаем имя объекта обработчику движения мышки и тот изменяет absolute кординаты объекта. Вообще это не правильный способ (не сморя на то что именно так сделано у mail.ru) - должна быть возможность прямой привязки, так как тормоза будут с этим способом (и есть) конкретные...

Ну а читать - всё там же www.ru.wikipedia.org, а ещё лучьше не просто читать, но и принимать активное участие в его наполнении.
 
G

Gisma

#11
Для: glukh
спасибо за увлекательную статью :blink:
по Drag`N`Drop - вы меня там неправильно поняли просто, осуществлять я его умею, не суть важно.
теперь по Ajax - если она "модель" то что в ней "мусорного", ответьте конкретно ;) Что есть мусор в AJAX если он всего лишь именованная модель
 
G

glukh

#12
<!--QuoteBegin-Gisma+16:09:2006, 15:39 -->
<span class="vbquote">(Gisma @ 16:09:2006, 15:39 )</span><!--QuoteEBegin-->Что есть мусор в AJAX если он всего лишь именованная модель
[snapback]43965" rel="nofollow" target="_blank[/snapback]​
[/quote]
"Мусор", "Свалка", "Хаос", "Гадюшник" - в данном контексте все эти слова синомимичны и относятся к Ajax. Если посмотреть что твориться на форрумах да и в умах, то станет совершенно ясно - Ajax уже прочно ассоциируется с XMLHttpRequest'ом! И именно это является предметом моей агресси.

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

Давно уже назрела необходиомсть поправить стиль мышления начинающих программеров, чтобы они учитывали трафик и ещё кучу всего, а не бездумно клепали страницы и суть проблеммы была очерчена и названа - Ajax. Минимизация трафика, избавление от многократного парсинга больших документов, большая "прозрачность", "приближенность", "чистота" что ли технологии "клиент-сервер"... При анализе того или иного решения можно было использовать сочитание "проверка на Ajax" "аджаксовость" и т.п. но ведь нет! Теперь подразумевая под Ajax не оптимальность работы клиент-сервера в изолированной среде браузера а именно использование XMLHttpRequest для изменения части документа - мы низводим саму идею введения слова...

ааа... ладно... кому нужно и без этого слова прекрасные решения создают...
 
A

Andrew Stephanoff

#14
А чем не нравится xmlHttpRequest? Тем, что делают на нем, а не на iframe? По мне, xmlHttpRequest намного удобнее. Кстати, и в DOM модель хорошо вписывается.
Здесь -- http://dklab.ru/lib/Subsys_JsHttpRequest/ Дмитрий Котеров описал все варианты использования динамической подкачки данных на страницу.
 
S
#15
Для: glukh
"Механизмов для отправки информации серверу несколько, через параметры заголовка - cookies'ы, через адрес ресурса методом GET, в теле запроса - методом PUT, что впрочем не мешает совмещать все эти методы."

Интересно, как JS может отправить запрос на сервер? Разве, что через location? Но это уже загрузка совершенно нового документа с точки зрения браузера. Поэтому JS по-барабану "механизмы отправки информации", как Вы выразились. Для этого, и был создан объект XHR. Так, что DHTML немного ущербен без применения этого объекта.
 
Статус
Закрыто для дальнейших ответов.