Поиск
Подписаться
Разное

Валидный XHTML 1.0 Transitional

Валидный RSS

Мифы о веб-стандартах Категория: Веб-мастерство
Название: Мифы о веб-стандартах
Дата добавления: 04-07-2012
Раз просмотрено: 335
Комментарии: 2
Рейтинг: · · · · · · · · · · (0 голосов)

Мифы о веб-стандартах

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

Логотип World Wide Web Consortium
Логотип World Wide Web Consortium

1. W3C создает стандарты «с потолка», а браузеры должны им следовать

Инновации браузеров против инноваций W3C — это удивление широко распространенная ложная дихотомия. Проще говоря, W3C является разработчиком. Веб-стандарты разрабатываются на основе консенсуса в рамках рабочих групп (РГ). Эти рабочие группы почти полностью состоит из представителей различных разработчиков, в основном браузеров. Каждая РГ имеет нескольких сотрудников W3C, но они в меньшинстве. Например, в настоящее время рабочая группа CSS имеет 74 члена, из которых только 4 (5,4%) является W3C персоналом.

Конечно, браузеры часто самостоятельно реализуют некоторые инновации, а стандартизируют их позже (например, Drag & Drop API, CSS переходы, CSS трансформации, CSS анимации), но это рискованно, и этой практики следует избегать. Если функция становится широко распространенной до стандартизации ее рабочей группой, W3C может быть вынуждена принять не слишком продуманный синтаксис этой функции.

2. Вы должны работать на большую компанию, чтобы влиять на веб-стандарты

Действительно, намного легче стать членом РГ, если вы работаете в известной компанией, связанной с веб-разработками. Но существует альтернативный способ, который заключается в том, что вы становитесь приглашенным экспертом, но это довольно тяжело. В рабочей группе CSS в настоящее время существует четыре приглашенных эксперта.

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

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

3. Редакторы практически создают веб-технологии

Не обязательно. W3C использует два подхода для реализации новых стандартов:

  1. Обсуждать, а потом изменять: каждая деталь вначале обсуждается в рабочей группе, и редактор должен подытожить эти решения в формальном отчете для утверждения консенсуса РГ. При этом подходе у редактора столько же полномочий, как и у всех, участвующих в обсуждении.
  2. Изменять, а потом обсуждать: при этом подходе, редактор имеет гораздо больше власти, для определения технологий и спецификации.

Рабочая группа CSS работает скорее по первой модели, но это правило для всех остальных рабочих групп.

4. Браузеры не могут полагаться на стандарты, потому что они постоянно меняются

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

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

5. CSS3 и CSS4 являются официальными терминами для обозначения версий CSS

После CSS 2.1, они были разбиты на модули, каждый со своими версиями. Модули, построенные на существующих в CSS 2.1 свойствах, были третьим уровнем, но новые, разрабатываемые функции, должны были начинаться с первого уровня. К сожалению, многие новые модули начали развиваться сразу с третьего уровня, преподнеся нам модное слово «CSS. Однако, некоторые новые функции (например, переменные) начали, как им и положено, развиваться с первого уровня.

Исторически, так сложилось, что термин «CSS используется для обозначения всех новых свойств после  CSS 2.1, независимо от уровня модуля. Оба этих определения имеют свои недостатки. Если мы будем использовать термин «CSS для всего, что появилось после CSS 2.1, как мы сделаем различие между CSS3 и CSS4? Если мы возьмем первую формулировку, это без основания исключает многие новые CSS модули.

6. W3C тесты существуют для проверки соответствия спецификациям

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

7. W3C = рабочая группа CSS + несколько других малых рабочих групп

Это совсем не так. Когда в 1994 году был основан W3C, CSS, даже не существовало. Много других очень важных веб-технологий было разработано W3C, единолично или в сотрудничестве с другими организациями по стандартизации:

И это, естественно, далеко не полный список. Рабочая группа CSS даже не является крупнейшей рабочей группой. Например, рабочая группа WebApps имеет 146 членов.

Это интересно: «Индикаторы загрузки на CSS».

Понравился материал? Расскажи о нем всем:
Оцените эту статью:
Прокомментируйте:
Ваше имя:
Vitalik  •  2012-08-11 12:03:49
Спасибо за интересную статью!

Позволю себе обратить внимание на несколько замеченных мною опечаток/описок:
1. Обсуждать, а *потом затем* изменять: ...
2. А *если, когда* экспериментальная возможность получила...
3. Если *он мы* возьмем первую формулировку, это
4. *B* это, естественно, далеко не полный список.
Андрей  •  2012-08-11 12:40:45
Огромное спасибо за вашу наблюдательность, ошибки исправлены.