Веб-стандарты: сколько вешать в граммах?


Веб-стандарты: сколько вешать в граммах?
04.07.2011

Константин Кичинский - эксперт департамента стратегических технологий Microsoft в России - отвечает на вопрос: "Почему один браузер поддерживает последние версии стандартов, а другой - нет?" Эксперт Microsoft описывает ситуацию с точки зрения разработчиков Internet Explorer.

Сегодня веб-стандарты начали снова бурно расти, и, честно признаюсь, мне это очень нравится. Конечно, говоря о бурном росте, нужно делать поправку на то, что бурно расти и развиваться начала именно часть, связанная с браузерами и технологиями, лежащими в основе клиентской части веба, - HTML, CSS, JavaScript и разнообразные API для JS, так как вне фокуса внимания обычно остаются не менее интересные области, связанные, в частности, с развитием стандартов, базирующихся на XML, отнологиях и различных проявлений семантического веба.

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

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

Поддержка как маркетинг

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

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

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

В сущности, сегодня поддержка той или иной технологии (веб-стандарта) реально становится инструментом продвижения, причём не менее важным, чем преимущества в скорости работы или загрузки, потребляемой памяти, количестве плагинов или аудитории пользователей.

Все говорят, что поддерживают HTML5, CSS3, различные API для JavaScript и другие интересные технологии. Некоторые кивают на других, указывая, что те что-то не поддерживают, выставляя себя в выигрышном свете.

И это даже может быть правдой, но, как говорится, не всей правдой.

Статусы, эксперименты и изменения

Прежде всего, веб-стандарты могут иметь разные статусы (Working Draft, Candidate Recommendation, Proposed Recommendation, W3C Recommendation). Тот или иной статус не делает стандарт менее или более стандартным. Ключевой вопрос - в стабильности и подверженности изменениям.

Как правило, считается, что стандарт в статусе Working Draft (WD) является нестабильным, неокончательным и может меняться на основании отзывов от индустриальных экспертов и производителей браузеров. Могут быть и исключения, связанные с особенностями того или иного стандарта.

Например, спецификация HTML5 очень большая и отдельные её части достаточно стабильны, а какие-то детали ещё обсуждаются. Есть примеры, когда стандарт "откатывается" до предыдущего статуса по процедурным особенностям, как это происходит с CSS 2.1, который тоже формально находится в статусе WD (Last Call). Бывает так, что развитие стандарта прекращается в пользу другого, как это случилось с WebSQL Database.

Статус WD не делает стандарт плохим или неперспективным, и навряд ли какой-либо производитель браузера возьмётся утверждать, что не будет его никогда поддерживать, если он будет востребован. Вопрос в том, как трактовать развивающийся стандарт и в каком виде его следует реализовывать и поддерживать.

Нужно ли реализовывать нефинальные версии стандартов? Безусловно, да! На самом деле, наличие таких реализаций является ключевым фактором в становлении понимания того, как стандарт будет работать на практике, насколько он будет востребован и как его нужно корректировать для достижения общего консенсуса. К слову, наличие реализаций стандарта является необходимым условием его финального утверждения в качестве рекомендации.

Но когда на арену выходит маркетинг, появляются нюансы. Оказывается, что для продвижения (или давления на конкурентов) выгоднее говорить, что браузер X поддерживает технологию Y, нежели что браузер X поддерживает экспериментальную технологию Y или что браузер X экспериментально поддерживает технологию Z - смотря в каком месте вы хотите расставить акценты.

Читать далее на www.computerra.ru