Почему так долго дорабатывается спецификация HTML 5? [закрыто]


25

Я читал это, и одно предложение привлекло мое внимание (выделение мое):

Таким образом, Ян Хиксон, крупнейший критик XHTML, породил HTML 5, ориентированную на действие спецификацию для малышей, которая не достигнет зрелого возраста до 2022 года , хотя некоторые из них можно использовать сегодня.

Это правда? Это действительно цикл разработки HTML 5? Почему это так долго? Что делает его настолько трудным, чтобы получить право, что это не будет окончательным до 11 лет?


35
Вы когда-нибудь пытались заставить группу людей договориться о чем-то?
Джордж Мариан

2
@ Джордж - Должен был сделать это ответ.
Бен Л

Кроме того, вы видели размер спецификации и насколько она сложна?
JB King

@ben Очевидно, я должен был. Я не думаю, что это было достаточно мясистым. :)
Джордж Мариан

Ответы:


19

Дата, упомянутая для процесса завершения, была назначена так далеко в будущем, потому что процесс стандартов для спецификации HTML был настроен таким образом, чтобы он гарантировал широкое принятие спецификации.

Некоторый фон: есть два органа по стандартизации, которые работают над черновиками, относящимися к тому, что мы обычно называем «HTML5»: Консорциум World Wide Web (W3C) и Рабочая группа по технологиям гипертекстовых приложений в Интернете (WHATWG). До июля 2012 года обе группы работали (в основном) вместе над разработкой HTML.

Основной процесс должен был пройти через ряд этапов:

  • Рабочий проект:  спецификация находится в активной разработке и обсуждении
  • Last Call Working Draft (LCWD): спецификация в основном завершена, и разработчики имеют возможность поднять последние возражения против спецификации до того, как она войдет в процесс финализации
  • Рекомендация кандидата:  спецификация эффективно доработана и безопасна для разработчиков и авторов контента
  • Рекомендация: две независимые, полностью совместимые реализации спецификации были полностью завершены

Веха LCWD началась в 2011 году, а этап Рекомендации кандидата, как ожидается, наступит сравнительно скоро в 2014 году. Это была последняя веха, Рекомендация, которая потребовала двух полных реализаций спецификации, что заняло бы несколько лет и является причиной 2022 года. свидание.

В этой модели первой настоящей вехой, которая касалась авторов контента (а не создателей пользовательских агентов, таких как браузеры), была LCWD, поскольку спецификация должна была быть в основном доработана. Как только LCWD будет завершен, HTML5 достигнет этапа Рекомендации кандидата, и он станет окончательной спецификацией во всех отношениях, кроме названия: вы сможете безнаказанно реализовать его, как последний этап - Рекомендация. не влияют на содержание стандарта и в значительной степени неинтересны авторам контента.

Однако в июле 2012 года W3C и WHATWG официально оформили раскол в том, как будет разработан проект HTML5. Это разделение, которое функционально происходило в течение нескольких лет, устанавливает два разных HTML-трека:

  • Жизненный стандарт, разработанный WHATWG и называемый просто «HTML», в котором спецификация никогда не является полностью полной. Разумный консенсус по стандарту установлен, но нет необходимости все реализовывать.

  • Периодические, стабильные снимки стандарта, разработанного W3C как спецификация HTML5. По состоянию на сентябрь 2012 года W3C предлагает достичь рубежа Рекомендации по «HTML 5.0» в 2014 году с точечными снимками каждые два года (например, «HTML 5.1» в 2016 году).

Благодаря первому HTML5, как мы поняли, теперь можно использовать . К сожалению, поскольку это жизненный стандарт, использование его в качестве автора контента требует понимания реализации каждого пользовательского агента.


Хотя Windows XP по-прежнему занимает 60-75% рынка, а для работы IE9 требуется Win7 (или Vista), я не думаю, что внедрение в 2012 году будет более 20-30%. Я имею в виду принятие едва работающего решения, а не чего-то, что готово для производства, такого как HTML4 или flash.
Slawek

@Slawek, независимо от того, какую долю использования вы бы хотели использовать , более половины пользовательских агентов на момент Рекомендации кандидата будут иметь разумную, если не почти полную, поддержку HTML5.

2
Что ж, я предпочитаю учиться на истории, чем ссылаться на молитвы некоторых представителей Microsoft и маркетинг FUD. DOM Level1 - спецификация 1998 года, никакой достойной поддержки в ЛЮБОЙ версии браузера Microsoft RELEASE до сих пор (IE9, вероятно, будет поддерживать, я не проверял). Я не говорю, что 75% браузеров не будут поддерживать HTML5 из-за WindowsXP, но 75% пользователей IE не могут заставить HTML5 работать. Обновление IE настолько болезненно, потому что требуется переключить операционную систему, прежде чем вы сможете сменить браузер :) Я могу только посмеяться над этим, потому что это безумие. Лучше, чем говорить, они заставят чертов DOM работать.
Slawek

2
Комментарий к недавнему комментарию: когда мы будем иметь дело с браузерами Microsoft, нам придется умереть с медленной производительностью Mozilla. Я очень "ориентированный на результат" человек. Я бы не стал касаться HTML5 (например, Canvas, SVG) в ближайшие 3-4 года. По сути, это не дает вам никакой прибыли по сравнению с flash, и вы все равно должны кодировать одно и то же во флэш-память, чтобы оно было совместимо с нормальным количеством браузеров вашей автоматической настройки. Вы уже должны иметь дело с сотнями несовместимостей в IE с сегодняшним днем, довольно простым HTML4. Я просто забочусь о «результатах» и сегодняшнем состоянии, а не ФУД и идеологии.
Slawek

1
+1 к заключительному абзацу: «использование его в качестве автора контента требует понимания реализации каждого пользовательского агента». Э-э ... НОЧЬ !!!
ГленПетерсон

12

Простой ответ: дизайн от комитета

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

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

Что бы там ни было, W3C решил развивать свои стандарты таким образом.


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

Да, правда, что происходит, когда вы накладываете прозрачный DIV поверх этого холста :) Выглядит просто, очень сложно сделать.
Slawek

9

Потому что важно, что это правильно.

  • Нужно время, чтобы все исправить - стандарт HTML5, как только он будет установлен, будет долгое время. Это должно быть лучшее, что может быть, и это должно быть правильно. Это требует дебатов экспертов, проб и ошибок, отзывов пользователей и разработчиков и анализа статистики.

  • Когда стандарт меняется, чье-то приложение где-то сломается - стандарты должны быть правильными с первого раза. С каждым изменением стандарта чье-то приложение в мире ломается от новой версии. Это требует от нас, как разработчиков, исправления, стоившего времени и денег. Это должно быть правильно с первого раза.

  • Необходимо удалить неопределенность - легко сказать, что именно это и делает тег canvas, когда на странице есть только тег canvas, но что делать, когда он находится внутри другого тега? А как насчет комбинаций тегов? Как они должны сделать? Как они должны отображаться с атрибутами стиля X, установленными в определенных комбинациях?

Бонус: взгляните на спецификацию HTML5 в ее текущей форме, и вы увидите, что с ней происходит.


7

Длинная? Microsoft почти 8 лет потребовалось, чтобы простой CSS2 едва работал в IE7, а поддержка DOM1 в javascript все еще не работает в IE8. Это спецификация 1998 года.

Вот почему вы не увидите широкого распространения HTML5 в мультимедиа в ближайшие 20 лет. Это очень сложно, незакончено, производительность отстой. Даже простые вещи, такие как веб-сокеты, отключены по соображениям безопасности.

Некоторые вещи не будут работать в качестве открытых стандартов. Делаете игры или MM в среде, которая должна работать на тонком клиенте и поддерживать постепенную деградацию? Это безумие.

Отредактировано: да, во-первых, это чрезмерное усложнение. У вас есть один флэш-плагин, который одинаков в каждом браузере и работает одинаково каждый раз. Это простое и эффективное решение. Один интерфейс, вы вносите изменения один раз, перекомпилируете и альт - у вас есть плагин для всех браузеров на рынке, используя некоторый промежуточный слой между браузером и плагином.

С другой стороны у вас есть 10 браузеров, и вы хотите добавить, например. поддержка мультимедиа / фильмов. Это означает, что каждая компания должна будет внедрить медиаплеер с нуля, кроме того, что каждый хочет чего-то другого. Apple хочет H.264, поэтому владельцы веб-сайтов будут выплачивать им гонорары за кодек для воспроизведения фильмов, Google и Mozilla хотят VP8, чтобы их бизнес не зависел от патентов Apple и т. Д.

Таким образом, это заканчивается реализацией того, что каждый хочет (в то время как VP8 или H.264 сделали бы, для начала).

Поэтому, прежде чем они смогут преодолеть свои разногласия, Adobe внедрит H.264 во флэш-памяти, использует их уже доступные потоковую передачу и стек DRM и ... все готово. 3-4 месяца и у вас есть работающая технология с 98% -ной степенью усыновления.

Простая, решает одна компания, поэтому они могут быстро вносить огромные изменения, и им не придется добавлять «идеи» 20 других членов «органа стандартизации». Кроме того, HTML5 отстает от флэш-памяти на 10-15 лет в мультимедиа. Разрыв будет только увеличиваться. В недавнем выпуске MAX avant вы могли видеть поддержку игровых контроллеров и полноэкранных гоночных 3D-приложений, работающих на флэш-памяти с полной частотой кадров, поддержку аппаратного ускорения и так далее. Между тем, Mozilla теперь может воспроизводить видео H.246 без сбоя браузера, а только воспроизводить. Любой дополнительный функционал (например, полноэкранный режим, потоковая передача, быстрая перемотка вперед) все еще отсутствует!

Кроме того, я думаю, что W3C просто тратит ресурсы, пытаясь сделать HTML5 какой-то недоделанной копией флеш-памяти. Это не сработает ... это все равно что пытаться сделать flash копию HTML. Не сработает


+1 за довольно четкое объяснение политики.
Майкл К

5

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

К лучшему или к худшему, большинству спецификаций требуется время для разработки.


2

Марк Пилигрим рассказывает об этом в своем «Dive Into HTML5» здесь: http://diveintohtml5.org/past.html. Кажется, многим людям не нравится версия книги, потому что она недостаточно техническая, но в этом разделе редакция довольно оправдана.

(Редактировать: я просто хотел дать ссылку на мой комментарий о людях, которым не нравится «болтливое» качество книги: проверьте рецензии на amazon . Лично мне понравилось читать ее, и она показалась мне информативной, поэтому пробег может отличаться. )


2

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


1
Здесь на ум приходит классическая проблема с курицей и яйцом;)
tcnolan

@ tnolan Совершенно верно!
Грант Пэйлин

2

Часть проблемы: я хочу ogg theora в браузере. Вы согласны? Нет. Вы хотите H.264. Но согласен ли я? Нет. В этом проблема Google, Mozilla, Microsoft, Apple, Adobe и всех корпораций, играющих за html 5. Они пытаются максимизировать доход и быть монополистом. Его интенсивная конкуренция. Так что это дольше для завершения.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.