Mamut wrote: > C>AJAX=Asynchronous Java And XML. > Позвольте-позвольте. Asynchronous Java*Script* And XML > Java и JavaScript — это две большие разницы.
Извиняюсь, очепятка такая.
> Ну и многие уже отказались от идеи использовать XML в Аяксе. Гораздо > удобнее предавать или JSON или напрямую сгенерированный HTML. Но > название осталось.
На самом деле, тут формат передачи данных между сервером и клиентом
особого значения не имеет. Важно то, что обычная модель PHP или CGI тут
уже плохо подходит — страница теперь уже имеет состояние, за которым
надо следить, а запросы уже могут быть конкуррентными.
> От серверное технологии Аякс почти не зависит
Зато от него зависят серверные технологии
Здравствуйте, Sheridan, Вы писали:
S>нет конечно, не сравнивай пожалуйста несравнимые вещи. Баш и с++ даааааалеко разными вещами занимаются, а вот пхп+апач и асп+иис это из одного ящика софт, и если у меня пхп уверенно обгоняет асп на п300 (а ведь так? ты со мной согласишся?) то я более чем уверен, что он обгонит асп и на п8000. Точка.
Читаем что такое масштабируемость, в частности, вертикальная масштабируемость.
Mamut wrote: > C>Просто мне как человеку, измученому нарзаном, хочется декларативного > C>управления транзакциями, да еще и с поддержкой XA. > Ха-ха
ХА-ХА не нужно, достаточно просто "XA"
> C>Ну хоть что-то похожее на Tapestry трехлетней давности появилось > Ну, PRADO тоже немолод Но это скорее попытка эмулировать оведение > ASP.NET. Хотя что у них там сейчас твоорится — фиг знает
Ему всего полтора года — маловато будет для серьезного проекта.
Здравствуйте, Sheridan, Вы писали:
S>Здравствуйте, Cyberax, Вы писали:
C>>Все, страница у нас готова. Теперь Tapestry сама будет выполнять C>>привязку, обрабатывать кнопки back (с помощью rewinding), рисовать C>>ошибки, управлять состоянием и т.п. S>Вобщем из хорошего только то что оно ошибки само проверяет, да back, а остальное... Вобщем не впечатлило меня почемуто...
Интересно, как можно увидеть все хорошее по одному примеру?
Могу еще один плюс указать. Приведенный Cyberax-ом шаблон страницы — почти обычный HTML. Его можно просмотреть в браузере, его могут редактировать дизайнеры.
Здравствуйте, Cyberax, Вы писали:
>> Без проблем писал такое, причем сортировка выполнялась не на уровне >> построения таблицы а на уровне sql запроса к БД. И поэтому с фильтрацией >> тоже проблем не вижу. C>Ну-ну. И сколько десятков килобайт кода это заняло?
Не так уж и сильно оно заняло.
C>Кстати, еще учти, что в ячейках таблицы могут быть custom-рендерер'ы. Да, а еще есть C>редактирование — щелкаем на строку и тут же редактируем поля.
Какой ужас! Нее, это не по мне, веб для такого не предназначен имхо. А еслии тебе такое нужно то может стоит задуматься об использовании веб-приложений типа glan.
C>И все это уже написано, мне просто надо вставить "<span jwcid="grid">" и C>написать реализацию TableModel на Java.
Еще и яву сюда. Тоесть чтобы нарисовать сайт на аспе надо знать асп, яву, яваскрипт, xml, html ну и еще несколько страшных слов. Для пхп это сам пхп, хтмл и яваскрипт если захочеш.
>> C>Причем мы хотим сделать так, чтобы листание таблицы и фильтрация >> работала через AJAX. >> Дачтож это за панацея ажакс? Объясни жураку... Чтото все чаще и чаще >> слышу... Очередной Nemerle? C>AJAX=Asynchronous Java And XML. То есть страницы, которые не требуют C>полной перезагрузки при действиях с ними.
Нет уж, я предпочту чтобы в старых браузерах работало.
C>В качестве примера можешь посмотреть Google Mail (могу инвайт прислать, если надо).
Ненадо, я понял, да и нелюблю я публичные ящики почтовые, для меня они сродни мусорке.
C>Да, а еще компоненты в Tapestry умеют делать graceful degradation до C>обычных странцчных компонентов, если браузер не поддерживает AJAX.
А порусски?
>> Вобщем делфи какоето получается... C>Именно, причем более правильный и адаптированый для Web. Что проще для C>использования: Дельфи или голый WinAPI?
А что в итоге быстрее и стабильнее работает? делфи или винапи? имхо всеже винапи.
Да и не стал бы я пхп с винапи сравнивать, это чтото типа webc++
>> C>Я умею. Но тратить зря на это время — нафиг. >> Тратить время? О повторном использовании кода слышал? C>В PHP оно примерно равно cut&paste.
Откуда уверенность?
C>Я про другое говорил — нафиг мне возиться с деталями HTML-разметки, если C>я могу просто собрать страницу из компонентов и с помощью CSS назначить C>им нужные визуальные стили?
И сколько это будет весить потом? Получится чтото типа МС сайта, который грузится елееле
>> А ты уверен что твои компоненты тебе дадут валидный хтмл в итоге? C>??? Естественно! C>Более того, они выдадут валидный XHTML, который при желании еще и через C>XSL можно протащить будет.
Откуда уверенность?
>> что </td> нигде не пропустят, что в урлах будет & вместо просто &, что >> все параметры тегов будут в кавычках, что не пропустит оно alt для >> картинок и прочее прочее прочее. C>Это скорее проблема PHP. О таких мелочах я уже и думать забыл — к C>хорошему быстро привыкаешь.
Из этих мелочей и строится валидный код.
>> C>Нет. ASP.NET — это наааамного более высокий уровень по сравнению с PHP. >> Из твоего кода я понял что асп успешно движется в сторону шаблонной >> писанины, и в конце концов все будет под один гребень причесано... C>Какой "гребень"? Весь HTML — это сплошные шаблоны. Везде одинаковые тэги C> <html>, <body> — ничего нового нет!
Как ни странно из одинаковых буков и на с++ пишут и на аспе и на пхп, не говоря уже про асм. Чтото шаблонов еще не придумали...
А если не иронизируя, то таки да, ты правильно заметил, от <html> до <body> все практическ одно и тоже, да и между </body> и </html> годами мало что меняется, а вот между <body> и </body> очень даже всякое разное бывает, и не всегда шаблоны выручат.
>>> > даааааалеко разными вещами занимаются, а вот пхп+апач и асп+иис это из >>> > одного ящика софт, и если у меня пхп уверенно обгоняет асп на п300 (а >>> > ведь так? ты со мной согласишся?) то я более чем уверен, что он обгонит >>> > асп и на п8000. Точка. >> C>Нда... А откуда такая уверенность? >> Обычная индукция. C>Мда. А на чем основана база индукции?
А на том что пхп стабильно и без заметных тормозов работает на загруженом на 100% п300, где асп врядли даже стартанет, далее, на п800 асп хоть и стартанет наверно но тормозить будет, а пхп только вздохнет посвободнее и плечи расправит. Ну и так далее.
Асп довольно тяжел и много уж хочет для своей работы. Пхп же в силу своей неприхотливости одинаково шустро и стаабильно работает практически на любом железе куда его удасться поставить.
Sheridan wrote: > C>Ну-ну. И сколько десятков килобайт кода это заняло? > Не так уж и сильно оно заняло.
Так сколько, все-таки? У меня что-то около килобайта (не считая
библиотечный код компонентов).
> C>редактирование — щелкаем на строку и тут же редактируем поля. > Какой ужас! Нее, это не по мне, веб для такого не предназначен имхо. А > еслии тебе такое нужно то может стоит задуматься об использовании > веб-приложений типа glan.
Веб предназначен для всего, что на нем делается. Rich web applications
достаточно широко используются и востребованы — это факт жизни.
> C>И все это уже написано, мне просто надо вставить "<span jwcid="grid">" и > C>написать реализацию TableModel на Java. > Еще и яву сюда. Тоесть чтобы нарисовать сайт на аспе надо знать асп, > яву, яваскрипт, xml, html ну и еще несколько страшных слов. Для пхп это > сам пхп, хтмл и яваскрипт если захочеш.
Tapestry никак не относится к ASP.NET. Это технология для Java, которая
по своей архитектуре почти соответствует ASP.NET.
> C>AJAX=Asynchronous Java And XML. То есть страницы, которые не требуют > C>полной перезагрузки при действиях с ними. > Нет уж, я предпочту чтобы в старых браузерах работало.
Так для этого нужна graceful degradation. Если у нас браузер не едет —
подсовываем ему классическую страницу.
Но у 95% пользователей уже давно все будет нормально работать.
> C>В качестве примера можешь посмотреть Google Mail (могу инвайт > прислать, если надо). > Ненадо, я понял, да и нелюблю я публичные ящики почтовые, для меня они > сродни мусорке.
Так ты его просто потести. Тогда поймешь как должны выглядеть
современные webapp'ы и почему PHP для этого плохо подходит.
> C>Да, а еще компоненты в Tapestry умеют делать graceful degradation до > C>обычных странцчных компонентов, если браузер не поддерживает AJAX. > А порусски?
Graceful degradation можно перевести как "упрощение функциональности без
потери работоспособности".
> C>Именно, причем более правильный и адаптированый для Web. Что проще для > C>использования: Дельфи или голый WinAPI? > А что в итоге быстрее и стабильнее работает? делфи или винапи? имхо > всеже винапи.
Стабильнее работает то, что стабильно написано. На Delphi это сделать ПРОЩЕ.
> Да и не стал бы я пхп с винапи сравнивать, это чтото типа webc++
PHP — это VB, а не С++.
>> > C>Я умею. Но тратить зря на это время — нафиг. >> > Тратить время? О повторном использовании кода слышал? > C>В PHP оно примерно равно cut&paste. > Откуда уверенность?
Хм... От большого количества PHP-кода, которое я видел?
> C>Я про другое говорил — нафиг мне возиться с деталями HTML-разметки, если > C>я могу просто собрать страницу из компонентов и с помощью CSS назначить > C>им нужные визуальные стили? > И сколько это будет весить потом? Получится чтото типа МС сайта, который > грузится елееле
Нормально. CSS загружается один раз, а потом кэшируется.
К примеру, новый дизайн Slashdot.org на CSS занимает на 25% меньше
траффика, чем старый табличный дизайн. А их новый AJAX-интерфейс в ТРИ
раза сокращает траффик за счет отсутствия необходимости перегружать всю
страницу.
> C>??? Естественно! > C>Более того, они выдадут валидный XHTML, который при желании еще и через > C>XSL можно протащить будет. > Откуда уверенность?
Кто там про переиспользование говорит? Контрол пишется один раз,
проверяется, а потом используется.
> C>Это скорее проблема PHP. О таких *мелочах* я уже и думать забыл — к > C>хорошему быстро привыкаешь. > Из этих мелочей и строится валидный код.
Я просто не помню когда у меня контрол выводил невалидный код (а я
постоянно валидирую HTML с помощью Tidy).
> C>Какой "гребень"? Весь HTML — это сплошные шаблоны. Везде одинаковые тэги > C> <html>, <body> — ничего нового нет! > Как ни странно из одинаковых буков и на с++ пишут и на аспе и на пхп, не > говоря уже про асм. Чтото шаблонов еще не придумали...
Вот этими буковками и являются компоненты. И это НЕ шаблоны, а именно
компоненты — то есть обособленные куски функциональности.
Глупо для каждого случая писать новую таблицу с поддержкой пейджинга.
Проще один раз сделать компонент, а потом его использовать. Если же он
чем-то не подходит — написать для этого редкого случая новый компонент.
> C>Мда. А на чем основана база индукции? > А на том что пхп стабильно и без заметных тормозов работает на > загруженом на 100% п300, где асп врядли даже стартанет, далее, на п800 > асп хоть и стартанет наверно но тормозить будет, а пхп только вздохнет > посвободнее и плечи расправит. Ну и так далее.
У меня вот Tomcat стабильно работал на P433. Что дальше?
Здравствуйте, Cyberax, Вы писали:
C>На самом деле, тут формат передачи данных между сервером и клиентом C>особого значения не имеет. Важно то, что обычная модель PHP или CGI тут C>уже плохо подходит — страница теперь уже имеет состояние, за которым C>надо следить, а запросы уже могут быть конкуррентными.
А разницы-то? На практике всё равно происходит обращение к серверу. Так генерировали всю страницу, теперь генерируем ту часть, которую попросили. Обновления страницы не происходит визуально, но обращение к скрипту никуда не делось, а следить за состоянием приходится уже на стороне браузера — серверной части от этого ни холодно, ни жарко — что спросят, то и дадут.
Здравствуйте, Cyberax, Вы писали:
C>Так сколько, все-таки? У меня что-то около килобайта (не считая C>библиотечный код компонентов).
Ну ясное дело что у меня больше. Чтобы точнее сказать это мне надо из дома, оно у меня там.
C>Веб предназначен для всего, что на нем делается. Rich web applications C>достаточно широко используются и востребованы — это факт жизни.
Еще раз скажу. http для веб приложений подходит плохо.
C>Tapestry никак не относится к ASP.NET. Это технология для Java, которая C>по своей архитектуре почти соответствует ASP.NET.
Тем более.
>> Нет уж, я предпочту чтобы в старых браузерах работало. C>Так для этого нужна graceful degradation. Если у нас браузер не едет — C>подсовываем ему классическую страницу.
Ну это гуд.
C>Но у 95% пользователей уже давно все будет нормально работать.
Зато как все быстро забивают на оставшиеся 5%...
>> Ненадо, я понял, да и нелюблю я публичные ящики почтовые, для меня они >> сродни мусорке. C>Так ты его просто потести. Тогда поймешь как должны выглядеть C>современные webapp'ы и почему PHP для этого плохо подходит.
Я пойму одно. С любой нормальной почтовой прогой это будет еще удобнее.
C>Стабильнее работает то, что стабильно написано. На Delphi это сделать ПРОЩЕ.
ПРОЩЕ не значит стабильнее, хотя часто и стабильнее не значит сложнее...
>> Да и не стал бы я пхп с винапи сравнивать, это чтото типа webc++ C>PHP — это VB, а не С++.
Назови другой язык для веба, который будет с++. Перл? Да нет, он к вебу был прикручен, основное назначение — скрипты. Руби? не помню чтобы егог в вебе использовали...
Вот асп да, это действительно бэйсик. На пару с шарпом.
>>> > C>Я умею. Но тратить зря на это время — нафиг. >>> > Тратить время? О повторном использовании кода слышал? >> C>В PHP оно примерно равно cut&paste. >> Откуда уверенность? C>Хм... От большого количества PHP-кода, которое я видел?
Хм... По твоему много кода == cut&paste? Со скольки строк/килобайт начинается оное?
Страшно тогда представить что творится в исходниках крупных проектов типа винды...
C>Нормально. CSS загружается один раз, а потом кэшируется.
Чтото слабо верится что css идет отдельным файллом...
C>К примеру, новый дизайн Slashdot.org на CSS занимает на 25% меньше C>траффика, чем старый табличный дизайн. А их новый AJAX-интерфейс в ТРИ C>раза сокращает траффик за счет отсутствия необходимости перегружать всю C>страницу.
Если так то гуд. Сколько ажакс стоит?
C>Кто там про переиспользование говорит? Контрол пишется один раз, C>проверяется, а потом используется.
Так всетаки контрол ты тоже пишеш?
C>Я просто не помню когда у меня контрол выводил невалидный код (а я C>постоянно валидирую HTML с помощью Tidy).
Ну раз так то это хорошо. Прияятно осознавать что не один я стремлюсь валидный код писать.
C>Глупо для каждого случая писать новую таблицу с поддержкой пейджинга. C>Проще один раз сделать компонент, а потом его использовать. Если же он C>чем-то не подходит — написать для этого редкого случая новый компонент.
Ну так и я могу один раз сделать класс таблицы а потом его использовать. Просто это по другому выглядеть будет. Вот как это выглядит применительно к формбилдеру что я выше код давал:
Здравствуйте, Sheridan, Вы писали:
C>>Я просто не помню когда у меня контрол выводил невалидный код (а я C>>постоянно валидирую HTML с помощью Tidy). S>Ну раз так то это хорошо. Прияятно осознавать что не один я стремлюсь валидный код писать.
Вообще, на мой взгляд, ты демонстрируешь настолько слабое представления о предметах спора, и при этом так передергиваешь факты, что назвать твои посты иначе как FUD у меня язык не поворачивается.
Здравствуйте, WFrag, Вы писали:
C>>>Я просто не помню когда у меня контрол выводил невалидный код (а я C>>>постоянно валидирую HTML с помощью Tidy). S>>Ну раз так то это хорошо. Прияятно осознавать что не один я стремлюсь валидный код писать. WF>Правда? :]
Здравствуйте, WFrag, Вы писали:
S>>Ну раз так то это хорошо. Прияятно осознавать что не один я стремлюсь валидный код писать. WF>Правда? :]
Знаю я про это, руки не дойдут никак..
WF>Вообще, на мой взгляд, ты демонстрируешь настолько слабое представления о предметах спора, и при этом так передергиваешь факты, что назвать твои посты иначе как FUD у меня язык не поворачивается.
Ясное дело я не знаю о современных компонентно-модельных делфи-подобных техологиях. Потомучто они мне не ну жны. Я пердпочитаю бОльший контроль нежели большее удобство. Это плохо?
[RSDN@Home][1.2.0][alpha][0]
[Красота без доброты умирает невостребованной. [Б. Франклин]]
Здравствуйте, WFrag, Вы писали:
WF>Правда? :]
Только вот интересно почему первое является ошибкой, хотя работает?
Да и вторая ошибка тоже под вопросом
3 ю еще можно понять но 4ю я вообще не понял...
Свое что-ть покажеж?
[RSDN@Home][1.2.0][alpha][0]
[Hи одна вещь не является всем тем, чем может быть. [Д. Бруно]]
Здравствуйте, Sheridan, Вы писали:
S>Ясное дело я не знаю о современных компонентно-модельных делфи-подобных техологиях. Потомучто они мне не ну жны. Я пердпочитаю бОльший контроль нежели большее удобство. Это плохо?
Нет, но при этом, по-моему, не стоит пытаться судить.
Aquila wrote: > А разницы-то? На практике всё равно происходит обращение к серверу. Так > генерировали всю страницу, теперь генерируем ту часть, которую > попросили. Обновления страницы не происходит визуально, но обращение к > скрипту никуда не делось, а следить за состоянием приходится уже на > стороне браузера — серверной части от этого ни холодно, ни жарко — что > спросят, то и дадут.
В get-запросе у тебя есть сразу все данные полей формы, а в случае с
AJAX в запросе могут быть вставлены не все данные полей (так как часто
нельзя передавать все состояние страницы). Поэтому надо как-то хранить
промежуточное состояние.
Ну и "отдать кусочек" не так просто — надо делить страницу на компоненты
Здравствуйте, WFrag, Вы писали:
S>>Ясное дело я не знаю о современных компонентно-модельных делфи-подобных техологиях. Потомучто они мне не ну жны. Я пердпочитаю бОльший контроль нежели большее удобство. Это плохо? WF>Нет, но при этом, по-моему, не стоит пытаться судить.
Я не сужу, я осуждаю стремление современных технологий в сторону максимального упрощения. Потому как упрощение не v;tn делаться без потери чего либо.
[RSDN@Home][1.2.0][alpha][0]
[Бумага все стерпит. [Цицерон]]
Здравствуйте, WFrag, Вы писали:
WF>Здравствуйте, Sheridan, Вы писали:
S>>Свое что-ть покажеж?
WF>Я версткой профессионально не занимаюсь. Не умею.
Дык и я версткой то профессионально не занимаюсь.
Да и при чем тут верстка — за тебя же компоненты все делают как я понял а ты только минимальную разметку делаеш... Или не так?
[RSDN@Home][1.2.0][alpha][0]
[Если бы вы и впрямь думали так, вы бы так не говорили. [И. Шварц]]