FAQ [Russian Translation]
Что такое веб-стандарты и зачем они нужны?
1 Введение
2 Что такое веб-стандарты?
2.1 Стандарты W3C
2.1.1 Что такое консорциум W3C
2.1.2 Чем он занимается?
2.1.3 Что такое стандарты W3C?
2.1.3.1 HTML 4.0
2.1.3.2 XML 1.0
2.1.3.3 XHTML 1.0, 1.1, Модуляризация XHTML
2.1.3.4 CSS – Каскадные таблицы стилей
2.1.3.5 DOM
2.2 Стандарты ECMA
2.2.1 Что такое ассоциация ECMA?
2.2.2 Чем она занимается?
2.2.3 Что такое стандарты ECMA?
2.2.3.1 ECMAScript
3 В чем преимущества использования веб-стандартов?
3.1 Доступность
3.1.1 Преимущества для программного обеспечения и компьютеров
3.1.2 Преимущества для людей
3.2 Стабильность
4 Выводы
1. Введение
Создавая Всемирную Паутину (World Wide Web), Тим Бернерс-Ли мечтал превратить ее в общее пространство, где пользователи могут обмениваться информацией, вместе играть в игры и общаться (Всемирная Паутина (World Wide Web), очень краткая история). Мы, разработчики веб-сайтов, воплощаем эту мечту в жизнь, создавая деловые, образовательные сайты и странички для общения.
Но сегодня, когда Всемирная Паутина разрослась до небывалых размеров, она нуждается в управлении, которое позволило бы в полной мере реализовать ее потенциал. Такое управление обеспечивают веб-стандарты, которые гарантируют каждому доступ к предоставляемой информации, ускоряют и облегчают развитие Интернета.
Разработка веб-страниц в соответствии со стандартами облегчает пользование Интернетом для людей с особыми потребностями. Например, слепые могут воспользоваться компьютерным озвучиванием страниц, а люди с ослабленным зрением могут изменять положение страниц и размер шрифта для более удобного чтения. К тому же, пользователи портативных устройств получают возможность путешествовать по Интернету с такой же легкостью, как и пользователи высокотехнологичных рабочих станций.
Существует целый ряд практических соображений побуждающих разработчиков уделять особое внимание веб-стандартам, и ниже мы расскажем о них подробнее. К примеру, поисковые машины качественнее индексируют сайты, соответствующие стандартам. Использование кода, разработанного специально для того или иного браузера, в два, а то и в три раза увеличивает объем работы при создании веб-страниц, а в условиях появления новых средств медиа результаты такой работы оставляют желать лучшего. Если разработчики не будут строго придерживаться веб-стандартов, ситуация только усугубится.
Некоторые опасаются, что стандарты ограничивают полет мысли, но, на самом деле, они почти полностью снимают необходимость выполнять однообразную и утомительную работу, позволяя разработчикам веб-сайтов проявлять гибкость и больше времени посвящать творческому оформлению. Веб-стандарты опираются на опыт исторического развития информационных технологий и в то же время, открыты для будущих усовершенствований.
Без широкого соответствия стандартам многие способы использования Интернета, в том числе такие, о которых сегодня можно только мечтать, были бы просто неосуществимы. На сегодняшний день все системы и разновидности программного обеспечения обладают общими характеристиками – они, казалось бы, почти универсальны, но кто знает, что принесет завтрашний день? Встать под контроль какой-то одной компании – значит, ограничить свое будущее, поставив его в зависимость от успехов и неудач, которых сможет достичь – или с которыми столкнется эта компания. Только поддержание универсальных стандартов позволит Всемирной Паутине выжить и будет способствовать тому, чтобы ее развитие продолжалось современными темпами.
Стандарты открывают настолько широкие возможности, что мы, сотрудники Проекта по поддержанию веб-стандартов The Web Standards Project (WaSP) считаем необходимым рассказать о них широкой общественности подробнее. Этот документ – только начало. Прочитав его, пользователи поймут, почему существуют веб-стандарты, как они действуют и для чего они нужны. Мы постоянно создаем какие-то новые элементы во Всемирной Паутине, тем самым мы вносим свой вклад в информационное пространство Интернета. Этоти элементы могут послужить созиданию – а могут стать ненужным балластом, который, в конце концов, потопит могучий корабль Интернета. Выбор зависит только от нас, но последствия этого выбора коснутся каждого.
2 Что такое веб-стандарты?
2.1 Стандарты W3C
2.1.1 Что такое W3C?
World Wide Web Consortium (W3C) – это международный отраслевой консорциум, главная задача которого – “способствовать полной реализации потенциала Всемирной Паутины“. Возглавляет W3C изобретатель Интернета Тим Бернерс-Ли. Консорциум был основан в 1994 году, и сегодня его членами являются более 450 организаций, в том числе, Microsoft, America Online (головная компания Netscape Communications), Apple Computer, Adobe, Macromedia, Sun Microsystems, и многие другие производители оборудования и программного обеспечения, поставщики контента, академические институты и телекоммуникационные компании. Подразделения Консорциума расположены в трех исследовательских институтах – Массачусетском технологическом институте (MIT) в США, Национальном институте исследований в области компьютерной обработки данных и автоматики (INRIA) в Европе и Университетом Кейо (Keio University) в Японии.
2.1.2 Чем он занимается?
Консорциум W3C разрабатывает открытые функциональные требования (фактические стандарты), повышающие функциональную совместимость продуктов, связанных с Интернетом. Выработкой Рекомендаций W3C занимаются рабочие группы, состоящие из членов Консорциума и приглашенных экспертов. Рабочие группы добиваются общего согласования позиций между всеми компаниями и другими организациями, вовлеченными в создание приложений для Интернета, и вырабатывают рабочие проекты и предлагаемые рекомендации, которые затем предоставляют членам и директору W3C для формального одобрения и придания им статуса Рекомендаций W3C. Более подробную информацию об этой процедуре и этапах рассмотрения рекомендаций можно получить на сайте W3C.
2.1.3 Что такое стандарты W3C?
2.1.3.1 HTML 4.0 (HyperText Markup Language) – язык разметки гипертекста
Язык разметки гипертекста (HTML) широко используется в Интернете для придания структуры текстовым документам. Браузеры интерпретируют эти документы, представляя пользователю их структуру в формате, специфичном для данных средств медиа. К примеру, визуальные браузеры обычно отображают элемент, выделенный тегами (<strong>
… </strong>
), как текст в жирном начертании, а приложения для преобразования текста в речь делают на таком элементе ударение при чтении.
С помощью каскадных таблиц стилей (Cascading Style Sheets, CSS) автор может обойти умолчания браузеров, определив, как должны быть представлены структурные элементы.
2.1.3.2 XML 1.0 (Extensible Markup Language) – расширяемый язык разметки
Пример части XML документа
<addressbook> <entry> <name>Bill Gates</name> <email>[email protected]</email> </entry> <entry> <name>Marc Andreesen</name> <email>[email protected]</email> </entry> <entry> <name>Jon S. von Tetzchner</name> <email>[email protected]</email> </entry> </addressbook>
Расширяемый язык разметки (XML), как и HTML, является языком разметки, но вместо одного строго фиксированного набора элементов позволяет создавать собственный или использовать набор, созданный кем-то другим. Благодаря пространствам имен XML (XML namespaces) существует даже возможность использования нескольких наборов элементов в одном документе.
Некоторые разновидности XML, например, XHTML и MathML, уже вошли в Рекомендации W3C. Другие пока включены только в Рабочие проекты W3C.
Стандарты таблиц стилей, в частности, CSS и XSL, открывают широкие возможности для определения того, каким образом будут отображаться элементы XML. Далеко не все браузеры поддерживают непосредственное отображение XML в соответствии со стандартами, поэтому для людей оптимально представление информации с помощью HTML (или XHTML) с использованием стилей CSS. Язык XML сегодня используется преимущественно для межкомпьютерных коммуникаций.
Язык XML намного гибче HTML, преимущественно за счет того, что позволяет использовать собственные элементы и создавать собственные структурные системы. Благодаря этой возможности XML является идеальным форматом для организации больших объемов данных. Уже сегодня этот язык используют многие базы данных и поисковые машины.
2.1.3.3 XHTML 1.0, 1.1 и модуляризация
Язык XHTML 1.0 – это переформулированный язык HTML, который выступает в качестве разновидности XML. Можно сказать, что язык XHTML 1.0 создан на основе HTML 4.01, но более строг в техническом плане благодаря влиянию XML.
браузерах XHTML отображается так же, как и эквивалентный код HTML. Язык XHTML используют тогда, когда может понадобиться переработка содержания кода, например, для оправки на КПК. Более строгие синтаксические правила XML делают автоматическую обработку XHTML гораздо легче и дешевле по сравнению с обычным HTML-кодом.
В основу XHTML 1.0 легли следующие общие концепции HTML 4.01:
- Параметры представления и форматирования документа должны быть отделены друг от друга с помощью таблиц стилей
- Документы должны быть доступными
- Документы должны быть приспособлены к использованию на международном уровне
Кроме того, в XHTML 1.0 используется модель трех шаблонов DTD: Strict, Transitional и Frameset. Эта модель впервые появилась в HTML 4.0, а оттуда перешла в HTML 4.01.
Среди важных технических подходов, пришедших в XHTML из XML, можно упомянуть следующие:
- Все типы документов определяются с помощью правильной декларации DOCTYPE
- Структура документа, соответствующего стандартам, содержит декларацию DOCTYPE, элемент html с заявленным пространством имен XHTML, элемент head, в который входит элемент title, и элемент body
- Все элементы и имена атрибутов пишутся строчными буквами, а все значения атрибутов заключаются в кавычки
- Все непустые элементы (например, p, li) имеют соответствующий закрывающий тег
- Все пустые элементы (например, br, hr, img) закрываются косой чертой (<br />)
- Документы соответствуют заявленному шаблону DTD
О шаблонах можно подробнее узнать в главе Обучение > Шаблоны
XHTML 1.1 образуют три важных составляющих::
- Шаблон XHTML 1.0 Strict DTD (с незначительными изменениями)
- Модуляризация XHTML
- Рекомендация по использованию кегля агат в XHTML (The Ruby Annotation)
Создавать документы на языке XHTML 1.1 можно несколькими способами. Во-первых, с помощью публичного шаблона XHTML 1.1 DTD. В этом случае документ будет очень строго структурирован, поскольку в XHTML 1.1 практически отсутствуют презентационные атрибуты. Здесь структурная и презентационная части документов полностью отделены друг от друга, и все параметры презентации прикладываются в виде таблицы стилей.
Во-вторых, документы XHTML 1.1 можно создавать с помощью модуляризации XHTML. Здесь уже знакомые компоненты HTML и XHTML (например, текст, таблицы, фреймы, формы) разбиваются на отдельные части. Это позволяет составить свой собственный шаблон DTD и использовать только необходимые разработчику компоненты. Модуляризация открывает перед разработчиком веб-страницы широкие возможности, позволяя ему, по сути, изменять разметку документа в соответствии с собственными представлениями.
Рекомендация по использованию кегля агат направлена на решение проблем, связанных с некоторыми дополнительными значками азиатских буквенных символов. Теги ruby используются для международных документов.
2.1.3.4 CSS (Cascading Style Sheets) – каскадные таблицы стилей
Каскадные таблицы стилей (CSS) – это механизм, позволяющий изменять внешний вид элементов HTML или XML, который приписывает стили типам элементов, самоопределяемым классам элементов или отдельным экземплярам класса.
Таблицы стилей могут применяться для определения согласованного внешнего вида всего сайта. После появления CSS Консорциум W3C порекомендовал прекратить использование элементов оформления HTML, зависящих от конкретного макета, и перейти на таблицы стилей, что позволит создать более простое и структурированное пространство Интернета.
2.1.3.5 DOM 1 (Document Object Model) – объектная модель документов первого разряда
Модель DOM позволяет использовать при создании веб-страниц все возможности и интерактивные особенности языка сценариев (например, ECMAScript, стандартизированной версии JavaScript). С точки зрения программирования объектная модель документов первого разряда (DOM Level 1) – это интерфейс прикладного программирования (Application Programming Interface, API) для взаимодействия с веб-страницами. Модель DOM облегчает языку сценариев доступ к структуре, содержанию и параметрам представления документа, написанного на языках HTML и CSS.
Модель DOM предусматривает будущие технологические усовершенствования: она позволяет любому языку сценариев взаимодействовать с любыми языками, использованными в документе. Этот стандарт не только упрощает программирование динамичного HTML, но и облегчает адаптацию к будущим Интернет-технологиям.
2.2 Стандарты ECMA
2.2.1 Что такое ассоциация ECMA?
Европейская Ассоциация Производителей Компьютеров (European Computer Manufacturers Association, ECMA) была основана в 1961 году в связи с необходимостью стандартизации компьютерных операционных форматов, в том числе, языков программирования и кодов ввода/вывода.
Офис ассоциации ECMA расположен в Женеве (Швейцария), рядом со штаб-квартирами Международной Организации по Стандартизации (International Organization for Standardization, ISO) и Международной Электротехнической Комиссии (International Electrotechnical Commission, IEC). В 1994 году ECMA была переименована в Европейскую Ассоциацию по Стандартизации Информационных и Вычислительных Систем (European Association for Standardizing Information and Communication Systems), что отражает расширение сферы деятельности организации.
2.2.2 Чем она занимается?
Главная задача ECMA заключается в разработке стандартов и технических отчетов в области информационных и коммуникационных технологий. Поскольку ECMA представляет собой ассоциацию компаний и не является официальным учреждением по стандартизации, она часто сотрудничает с официальными государственными и международными организациями.
Стандарты ECMA стали основой международных и европейских стандартов. На сегодняшний день опубликовано более 270 стандартов и 70 технических отчетов ECMA.
85 из этих стандартов были одобрены международной Организацией по Стандартизации (International Organization for Standardization, ISO) в качестве международных. Кроме того, Европейский Институт Стандартов Связи (European Telecommunications Standards Institute, ETSI) принял 25 стандартов ECMA в качестве европейских.
2.2.3 Что такое стандарты ECMA?
2.2.3.1 ECMAScript (стандартизированная версия JavaScript)
ECMAScript – это стандартизированный язык сценариев, основанный, в основном, на языках JavaScript (Netscape) и JScript (Microsoft). Стандарт ECMAScript разработан Техническим Комитетом 39 (Technical Committee 39, TC-39) ассоциации ECMA.
Объектный язык ECMAScript используется преимущественно для управления объектами веб-страниц, определенными моделью DOM. Эти объекты (фактически, элементы, из которых состоят веб-страницы или сами веб-страницы целиком) можно добавлять, удалять, перемещать или изменять их свойства. Это позволяет разработчикам сайтов использовать специальные эффекты: анимацию текста, графические трансформации и страницы, изменяющиеся в зависимости от вводимой пользователем информации без обновления.
Текущие характеристики ECMAScript описаны в Стандарте ECMA-262, «Характеристики языка ECMAScript», 2-е издание (ECMAScript Language Specification).
3 В чем преимущества использования веб-стандартов?
3.1 Доступность
3.1.1 Преимущества для программного обеспечения и компьютеров
Если веб-страница разработана в соответствии со стандартами, ее будет легче найти при поиске по Интернету. Структурная информация, которая содержится в документах, соответствующих стандартам, облегчает доступ и оценку информации, представленной в этих документах, для поисковых машин и обеспечивает более точное индексирование.
Использование веб-стандартов облегчает распознавание структуры документа для серверного и клиентского программного обеспечения, что упрощает применение на сайтах поисковых машин и обеспечивает более точные результаты поиска.
Стандарты разрабатываются для того, чтобы даже старые версии браузеров распознавали основную структуру документов. В этом случае браузер сможет отобразить основное содержание сайта, пусть и без самых современных и необычных дополнений. То же самое касается и роботов – систем, собирающих информацию, представленную на сайте, для поисковых машин и других индексаторов.
Если код страницы соответствует стандартам, это дает возможность подтвердить правильность страницы с использованием одного из сервисов аттестации. Контрольное устройство обрабатывает документ и выводит список ошибок, что облегчает их поиск и исправление и позволяет сэкономить время.
Документы, разработанные в соответствии со стандартами, проще конвертировать в другие форматы, например, в файлы базы данных или документы Word. Это позволяет использовать документы, представленные во Всемирной Паутине, в самых разных целях и формах и упрощает адаптацию данных к новым системам оборудования или программного обеспечения, в том числе, телевизорам и КПК.
3.1.2 Преимущества для людей
Доступность – одно из важнейших соображений, легших в основу многих веб-стандартов, особенно для HTML.
Под доступностью понимается обеспечение доступа к Интернету не только людям с ограниченными физическими возможностями, но и пользователям нестандартных браузеров, в том числе, голосовых, которые читают страницы вслух людям с ослабленным зрением, браузеров Брайля, которые переводят текст на язык Брайля, браузеров портативных устройств с маленькими мониторами, дисплеев с телетекстом и других необычных устройств вывода.
С появлением все новых и новых способов доступа к Интернету, задача адаптации или создания копий веб-сайтов в соответствии со всеми возможными требованиями становится все более сложной (на самом деле, некоторые утверждают, что даже сегодня это невозможно). Создание веб-страниц в соответствии со стандартами – важный шаг, направленный на решение этой проблемы. Стандартизация сайтов позволяет гарантировать, что правильно отображать сайты будут не только традиционные браузеры, как старые, так и новые, но и нестандартные браузеры и средства медиа.
Некоторые последствия пренебрежения стандартами очевидны: прежде всего, это ограничивает доступ к сайту. Имеет ли смысл ограничивать круг посетителей только теми, кто захочет найти способ просматривать подобный сайт? В бизнесе лишение даже небольшого количества посетителей доступа к сайту может привести к серьезному сокращению прибыли. Если речь идет об образовательном сайте, имеет смысл обеспечить доступ к нему не только обеспеченным здоровым школьникам – пользователям графических браузеров, но и детям из тех стран, где инфраструктура развита плохо, а самый распространенный вид браузеров – текстовые, равно как и студентам с ограниченными физическими возможностями, использующим специализированные браузеры.
Этот же принцип применим ко всем типам сайтов: хотя пренебрежение стандартами и использование специфических возможностей, предоставляемых тем или иным браузером, довольно соблазнительно, в долгосрочной перспективе гораздо больше пользы принесет широкая доступность сайта.
3.2 Стабильность
Почти все стандарты разрабатываются с расчетом как на предыдущие версии браузеров, так и на те, которые могут появиться в будущем, чтобы документы, созданные в соответствии с устаревшими стандартами отображались в более современных браузерах, а страницы, разработанные с применением новых стандартов, «мягко упрощались» для обеспечения приемлемого отображения в старых версиях браузеров.
Поскольку за время существования сайта группы дизайнеров, работающих над ним, могут сменяться, важно, чтобы новые специалисты могли понимать код и с легкостью его редактировать. Веб-стандарты образуют набор правил, доступных для изучения, понимания и применения любому разработчику веб-страниц. Когда один разработчик создает сайт в соответствии со стандартами, другой с легкостью сможет продолжить его работу.
4. Заключение
Нам, как веб-разработчикам, постоянно приходится сталкиваться с тем, что разные браузеры и даже версии одного и того же браузера, отображают страницы по-разному. Это приводит к необходимости создания двух или нескольких кодов для разных браузеров, что отнимает много времени, или вынуждает разработчиков создавать сайты в соответствии с требованиями одного конкретного браузера, что затрудняет или делает вообще невозможным доступ к сайту для некоторых пользователей. Появление нового оборудования и программного обеспечения, подобного телефонам, пейджерам и КПК, только усугубит ситуацию.
Веб-стандарты – не туманное законодательство, разработанное далекими от проблем реальной жизни организациями. Как мы уже говорили, стандарты разрабатывают преимущественно те, кто ими пользуется: создатели браузеров, веб-разработчики, компании, предоставляющие содержательное наполнение, и другие организаций.
Создание веб-страниц в соответствии со стандартами сокращает время, затрачиваемое на разработку, и облегчает дальнейшее обслуживание сайтов. Решение проблем и исправление ошибок становится намного проще, поскольку в основе сайта лежит стандартный код. Тем, кто разрабатывает страницы в соответствии со стандартами, не приходится тратить время на написание и обслуживание нескольких версий кода, направленных на обеспечение согласованного отображения сайта: достаточно разработать лишь одну версию.
Первостепенное значение приобретает обеспечение всеобщего соответствия веб-стандартам. Цель Проекта по поддержанию веб-стандартов – сделать Интернет лучше и для разработчиков, и для конечных пользователей, поощряя создателей и редакторов браузеров и веб-страниц следовать стандартам. Разработчики веб-сайтов могут значительно облегчить нашу задачу, взяв для себя за правило придерживаться стандартов при создании веб-страниц и настаивая на том, чтобы генераторы и рендереры кода также соответствовали стандартам.
Перечисленные здесь причины, объясняющие, почему соответствие веб-стандартам имеет такое больше значение, должны побудить разработчиков к тому, чтобы начать применять эти стандарты на практике, и могут служить аргументом для убеждения руководства и коллег в том, что использование веб-стандартов действительно необходимо.
Помогите нам воплотить мечту в жизнь.
Web Standards Project Developer Education Committee: Stephan Nedregaard (coordinator), Kynn Bartlett, Gail T. Cohen, Jens Edlund, Nick Finck, Tomas Fjetland, Peter Fleck, Markus Gut, Holger Maier, Julian Missig, Laura Mollett, Randy Piatt, Lewis A. Shadoff, Juergen Steinwender, Bart Szyszka, Matthew Thomas, Dane Weber
Updated 02-27-2002 by Molly E. Holzschlag and Shirley E. Kaiser of WaSP LEARN Committee.
Translated by Evgeny Ponomarev
The Web Standards Project is a grassroots coalition fighting for standards which ensure simple, affordable access to web technologies for all.
Translations:
- FAQ [Belarusian Translation]
- FAQ [Dutch Translation]
- FAQ [Farsi Translation]
- FAQ [French Translation]
- FAQ [Italian Translation]
- FAQ [Japanese Translation]
- FAQ [Korean Translation]
- FAQ [Polish Translation]
- FAQ [Russian Translation]
- FAQ [Simplified Chinese Translation]
- FAQ [Spanish Translation]
- FAQ [Traditional Chinese Translation]