Автор Тема: Что должно быть вместо HTML  (Прочитано 21586 раз)

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: Что должно быть вместо HTML
« Ответ #15 : Декабрь 20, 2012, 07:05:24 pm »
Protocol Buffers я привел в качестве примера структуры отличной от html/xml.
Логика железная. С тем же успехом можно привести в качестве примера скажем mpegts :-) Ну, или там tiff.

Если продолжать сегодняшнюю линейку, то я бы убрал js и flash. CSS должен иметь все возможности скриптового языка по обработке на стороне клиента.
Предлагаешь превратить CSS в полноценный ЯП? Мне уже страшно :-)
Y = λf.(λx.f (x x)) (λx.f (x x))

Vartovyj

  • Full Member
  • ***
  • Сообщений: 197
    • Просмотр профиля
Re: Что должно быть вместо HTML
« Ответ #16 : Декабрь 20, 2012, 07:22:56 pm »
tiff никогда не планировался на замену xml
css и так в значительной мере заменяет яваскрипт

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: Что должно быть вместо HTML
« Ответ #17 : Декабрь 20, 2012, 07:38:20 pm »
tiff никогда не планировался на замену xml
css и так в значительной мере заменяет яваскрипт
protobuf никогда не планировался на замену html.

Напиши мне пожалуйста на css быстрое преобразование фурье. А поиск пути A* напишешь?
Y = λf.(λx.f (x x)) (λx.f (x x))

Vartovyj

  • Full Member
  • ***
  • Сообщений: 197
    • Просмотр профиля
Re: Что должно быть вместо HTML
« Ответ #18 : Декабрь 20, 2012, 07:42:56 pm »
Напиши мне пожалуйста на css быстрое преобразование фурье. А поиск пути A* напишешь?
А зачем это для веба?

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: Что должно быть вместо HTML
« Ответ #19 : Декабрь 20, 2012, 07:53:33 pm »
Напиши мне пожалуйста на css быстрое преобразование фурье. А поиск пути A* напишешь?
А зачем это для веба?
Например для игр. Я же давеча долго разорялся о том, что неизвестно куда движется веб, но он точно движется также и в сторону полноценных приложений в браузере.

Самый простой пример - игры в браузере.
Самые полезные примеры - обучение. Вот парочка:
http://qiao.github.com/PathFinding.js/visual/ ( http://habrahabr.ru/post/162915/ )
http://math.uni.lu/~david/linkage/ ( http://habrahabr.ru/post/161301/ )

Это квинтесенция концепции приложений в браузере. Естественно они используются шире - почти любой современный сайт так или иначе это использует (широкоизвестный пример - gmail, twitter).
Y = λf.(λx.f (x x)) (λx.f (x x))

Vartovyj

  • Full Member
  • ***
  • Сообщений: 197
    • Просмотр профиля
Re: Что должно быть вместо HTML
« Ответ #20 : Декабрь 20, 2012, 08:47:13 pm »
Я же давеча долго разорялся о том, что неизвестно куда движется веб, но он точно движется также и в сторону полноценных приложений в браузере.
Негодится js для таких целей. Для полноценных приложений, запускаемых, скажем, в браузерной песочнице, нужен нормальный полноценный язык. Вот поэтому я и создал тему.

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: Что должно быть вместо HTML
« Ответ #21 : Декабрь 20, 2012, 08:57:38 pm »
Я же давеча долго разорялся о том, что неизвестно куда движется веб, но он точно движется также и в сторону полноценных приложений в браузере.
Негодится js для таких целей. Для полноценных приложений, запускаемых, скажем, в браузерной песочнице, нужен нормальный полноценный язык. Вот поэтому я и создал тему.
А что годится? Что такое полноценный нормальный язык? У каждого своё понимание полноценности.
Y = λf.(λx.f (x x)) (λx.f (x x))

Vartovyj

  • Full Member
  • ***
  • Сообщений: 197
    • Просмотр профиля
Re: Что должно быть вместо HTML
« Ответ #22 : Декабрь 20, 2012, 09:52:44 pm »
Наверное, такой принцип, как в World of tanks больше подходит для игр и др. требовательных к ресурсам приложений.

Илья Ермаков

  • Sr. Member
  • ****
  • Сообщений: 493
    • Просмотр профиля
Re: Что должно быть вместо HTML
« Ответ #23 : Декабрь 21, 2012, 05:43:03 am »
Кстати, про WebGL все в курсе? :)

В принципе, программная логика в браузере имеет принципиальные преимущества в плане программирования в том, что исчезает разорванность состояния, таскаемого между клиентом и сервером. Вся сессия, весь контекст взаимодействия с пользователем можно хранить на клиенте. Это упрощает программирование. Не говоря про то, какие эксперименты с эргономикой интерфейса можно делать :)

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

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

А ещё, коли уж меня понесло, есть такая хрень, как jQuery :) На которой иногда встретишь вместо простого, как валенок, кода с глобальной переменной состояния и автоматным switch-ом, такую "событийно-ориентированную" декларативную порнографию :)

Madzi

  • Jr. Member
  • **
  • Сообщений: 86
    • Просмотр профиля
Re: Что должно быть вместо HTML
« Ответ #24 : Декабрь 21, 2012, 08:24:42 am »
У разработчика js и html могут быть в разных файлах (или что там у него в IDE вместо), а вот на выходе из веб-сервера это все может приехать в едином http-ответе, без урлов унутре, в единой слепленой html'ине.

PS. И да, если нужен простейший скриптинг в простейшей странички, то довольно глупо это все раскидывать по десятку сущностей.
Если у разработчика всё в один файл замешено, то он сам себе злобный буратин.
Раскидывают скрипты по десятку сущностей (модулей) для удобства их загрузки/чтения/сопровождения. Нормальный сайт загружает небольшой HTML, а затем подгружает CSS в зависимости от устройства вывода (экран/принтер/...), и скрипты, причём умеет это делать асинхронно и по мере надобности. Т.е. если пользователь не задействует какой-то функционал, то соответствующие скрипты и не загрузятся.

Madzi

  • Jr. Member
  • **
  • Сообщений: 86
    • Просмотр профиля
Re: Что должно быть вместо HTML
« Ответ #25 : Декабрь 21, 2012, 08:27:48 am »
Я же давеча долго разорялся о том, что неизвестно куда движется веб, но он точно движется также и в сторону полноценных приложений в браузере.
Негодится js для таких целей. Для полноценных приложений, запускаемых, скажем, в браузерной песочнице, нужен нормальный полноценный язык. Вот поэтому я и создал тему.
А чем вам так не угодил js ? На нём сейчас не только в браузере пишут. Node.js, например.

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: Что должно быть вместо HTML
« Ответ #26 : Декабрь 21, 2012, 08:54:32 am »
Наверное, такой принцип, как в World of tanks больше подходит для игр и др. требовательных к ресурсам приложений.
Меньше подходит. Хотя бы потому, что тот же WoT доступен только виндовозникам и только под x86, а указанные мной примеры приложений доступны всем, в том числе на телефонах и планшетах.
Y = λf.(λx.f (x x)) (λx.f (x x))

Vartovyj

  • Full Member
  • ***
  • Сообщений: 197
    • Просмотр профиля
Re: Что должно быть вместо HTML
« Ответ #27 : Декабрь 21, 2012, 09:24:40 am »
В таком случае, нужен стандарт единой виртуальной машины для всех браузеров.

Geniepro

  • Hero Member
  • *****
  • Сообщений: 1955
  • Знайте- истина в том, что повторено трижды подряд!
    • Просмотр профиля
Re: Что должно быть вместо HTML
« Ответ #28 : Декабрь 21, 2012, 09:35:20 am »
В таком случае, нужен стандарт единой виртуальной машины для всех браузеров.
Уже есть -- JS+HTML+CSS
to iterate is human, to recurse, divine

Салат «рекурсия»: помидоры, огурцы, салат…

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: Что должно быть вместо HTML
« Ответ #29 : Декабрь 21, 2012, 11:05:04 am »
Кстати, про WebGL все в курсе? :)
Угу. А также про Canvas и SVG. Кстати, еще вот интересная технология - WebRTC (хотя она и из другой оперы - из той же оперы чем наша контора занимается).

В принципе, программная логика в браузере имеет принципиальные преимущества в плане программирования в том, что исчезает разорванность состояния, таскаемого между клиентом и сервером. Вся сессия, весь контекст взаимодействия с пользователем можно хранить на клиенте. Это упрощает программирование. Не говоря про то, какие эксперименты с эргономикой интерфейса можно делать :)
Да там даже при в точности таком же UI как на десктопе, при той же логике работы и так далее, все равно есть одно огромное преимущество - у пользователя ВСЕГДА будет актуальная версия приложения. Это становится особенно актуально если это приложение должно как-то взаимодействовать с сервером. Это значит что клиентское приложение всегда будет согласовано с серверным по протоколам и так далее. А это дорогого стоит.

Принципиальный противовес такому подходу для публичных ресурсов - это, ясен хрен, необходимость дружить с поисковиками.. Может быть, тут на помощь пришёл бы какой-то подход автоматического порождения "сбоку" контента для чтения чисто поисковиками.
А вот и нифига :-) Ну, то есть ты смотрел примеры веб-приложений которые я приводил? Вот скажи, зачем им индексироваться поисковиком? Точнее, что там можно индексировать? Ну, или скажем игра какая-нибудь. ну скажем Doom - что там индексировать то? Это ж классическое приложение.

А то что касается написания на js клиентов для сайтов (как это модно говорить - ajax сайт), то во-первых гугл недавно научился таки самостоятельно делать снапшоты таких сайтов. Пруф: http://habrahabr.ru/post/158845/

А во-вторых таки да, то что ты описал рекомендовано гуглом же (до того как они научились это делать), вот инструкция как это делается: https://developers.google.com/webmasters/ajax-crawling/

Ну и вот с помощью чего можно например сделать снапшот (ключевое слово для гуглинга headless browser):
http://phantomjs.org/
http://htmlunit.sourceforge.net/

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

А ещё, коли уж меня понесло, есть такая хрень, как jQuery :) На которой иногда встретишь вместо простого, как валенок, кода с глобальной переменной состояния и автоматным switch-ом, такую "событийно-ориентированную" декларативную порнографию :)
Ну, jQuery кроме абстракций дает еще настоящую (или почти настоящую) браузеронезависимость. Чем-то это напоминает boost, который тоже исправляет недоделки в реализациях языка и в дизайне стандартной либы. Но вообще, я предпочитаю все же использовать, по возможности (то есть если нет жесткой необходимости древние (до 9 версии) IE поддерживать) вместо jQuery использовать другой фреймворк: Vanilla JS
Y = λf.(λx.f (x x)) (λx.f (x x))