Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
К курсовой по стандартизации и сертификации.docx
Скачиваний:
7
Добавлен:
14.11.2019
Размер:
456.23 Кб
Скачать

http://site.nic.ru/node/478

«Энциклопедия сайтостроения»

Веб-стандарты: ключевые концепции и плюсы применения

26.07.2011

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

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

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

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

Прежде всего, сам термин «веб-стандарты» не вполне точен. Во-первых, потому что спецификации W3C имеют статус рекомендаций — их можно выполнять, а можно и нет: никаких штрафных санкций каких бы то ни было контролирующих органов за пренебрежение буквой технологических спецификаций на современном этапе развития отрасли не предусматривается. Во-вторых, потому что рекомендация — это финальный статус спецификации W3C, а многие спецификации начинают жизнь (находя экспериментальную поддержку в браузерах и применение на реальных сайтах) задолго до официального утверждения в качестве рекомендаций. И это, похоже, единственно правильный путь развития технологий. Фактическое внедрение, востребованность профессиональным сообществом — очень мощный стимул, ускоряющий разработку и утверждение спецификаций и, как следствие, совершенствование отрасли в целом.

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

Можно сказать, что философия современных веб-стандартов основывается на трех китах:

* разделении содержания, представления и поведения на уровне конечного кода веб-страниц, отправляемого сервером клиенту;

* семантичности разметки;

* валидности кода разметки и синтаксической корректности кода таблиц стилей и скриптов клиентской стороны.

Остановимся на каждом из них подробнее.

Принято считать, что веб-документ составляют четыре материи: содержание, структура, представление и поведение. Содержание — это, грубо говоря, «полезный груз» веб-страницы, тот текст, который вы видите, просматривая ее в окошке браузера. Содержание практически неотделимо от структуры, описывающей различные смысловые единицы контента: заголовки, абзацы текста, списки, определения, цитаты и прочее. Представление — гораздо более независимая от структурированного содержания категория. Оно описывает особенности отображения или воспроизведения контента. Примерами различных представлений могут служить внешние виды веб-страницы на большом экране монитора настольного компьютера или ноутбука, на маленьком экране мобильного устройства, на листе бумаги после распечатки. Помимо перечисленных нами визуальных представлений, могут быть и другие их виды. Так, воспроизведение текста страницы речевым браузером является аудиальным представлением этого документа. А если речь идет о выводе контента веб-страницы на механическую строку Брайля для незрячих людей или о печати этого документа на специальном брайлевском принтере, подразумеваются тактильные представления.

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

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

Если говорить о конкретных технологиях, то для структурирования контента веб-страниц в современном мире используется HTML, за управление представлением отвечает CSS, а задачи управления поведением возложены на JavaScript.

Семантика в языкознании — это значение, смысл слова, речевого оборота, грамматической формы. Применительно к HTML-разметке этот термин используется в похожем качестве. Семантичная (семантическая) разметка — это, в широком смысле, внимательное отношение к смысловой нагрузке тех или иных структурных единиц при написании кода. Базовый уровень семантики — использование структурных элементов HTML строго по назначению. Следующий, более тонкий уровень — грамотное именование классов и идентификаторов элементов, использующихся в CSS-коде, сообразно их смысловой нагрузке, но никак не особенностям визуального представления. Еще более высокий уровень — использование сверх основной HTML-разметки каких-либо дополнительных метаданных, облегчающих возможную машинную обработку контента (примеры средств реализации — микроформаты, Microdata и RDFa).

Валидность — соответствие кода формальным требованиям спецификаций — убережет разработчика от возможных неприятных неожиданностей, связанных, по крайней мере, с его собственными ошибками. Если вы относительно консервативны и не выходите в процессе разработки за рамки спецификаций, уже официально утвержденных в качестве рекомендаций W3C (например, XHTML 1.0 Strict и CSS2.1), в идеале необходимо стремиться доводить код до полностью валидного состояния. Валидность труднее обеспечить, если речь заходит об экспериментальных технологиях (например, HTML5 и CSS3). Общепринятой можно признать практику стремиться достигать абсолютной валидности кода разметки, а к таблицам стилей относиться более либерально, ограничиваясь обеспечением их синтаксической корректности. «Фундамент» HTML5 — словарь и грамматика языка разметки — относительно небольшая часть всей спецификации, которая уже в деталях проработана и не будет претерпевать принципиальных изменений. Многие свойства и значения, предусматриваемые в CSS3, разработчики пока вынуждены применять с вендорными префиксами, что автоматически делает таблицы стилей невалидными. Можно отметить, что валидность кода разметки куда как более важна, чем валидность таблиц стилей, ибо код разметки описывает самоценную сущность — структурированное содержание, а код таблиц стилей — всего лишь представление, которое не может существовать без содержания, и вариантов которого для одного и того же содержания теоретически может быть бесконечно много.

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

* ускорение загрузки и рендеринга веб-страниц;

* облегчение возможной машинной обработки контента;

* бо́льшая гибкость в отношении различных сред и устройств вывода информации;

* лучшая доступность контента веб-страниц для пользователей с ограниченными возможностями (в первую очередь имеются в виду незрячие и слабовидящие люди);

* обеспечение доступности контента для пользователей устаревших, а также консольных и прочих «экзотических» браузеров;

* гарантированная совместимость верстки с современными графическими браузерами и всеми последующими их версиями;

* облегчение процесса разработки веб-сайтов.

http://csstips.net/reality/

Веб-стандарты — красивая мечта, но какова реальность?

Введение

До этого момента мы говорили о красивом идеале веб-стандартов. Веб-стандарты допускают функциональную совместимость между всеми браузерами, на каждой операционный системе и даже на каждом доступном электронном устройстве. Но как дело обстоит в реальности? Все ли браузеры следуют стандартам на 100%? Все ли веб-разработчики используют веб-стандарты должным образом? Создают ли веб-разработчики страницы, а потом отходят, уверенные, что их дизайн будет поддерживаться везде?

Действительно простой ответ на последний вопрос – нет. Это идеальная ситуация, которая далека от реальности. В этой статье я расскажу о следующих вещах:

* Как проверить сайт на соответствие стандартам?

* Соответствие современных сайтов стандартам

o Amazon: Торговля по стандартам?

o CNN: Стандартизованные новости?

o Apple: Вершина утонченности в дизайне … и валидации?

o Небольшое исследование соблюдения стандартов

* Почему есть нехватка сайтов, соблюдающих стандарты?

o Образование

o Бизнес-причины

* Резюме

* Дальнейшее чтение

* Упражнения

Как проверить сайт на соответствие стандартам?

Прежде, чем идти дальше, ответим на вопрос, который вы, возможно, задаете себе: «как узнать, что сайт использует веб-стандарты?». Выглядит ли он иначе, чем другие веб-сайты?

И да, и нет. Сайты, следующие веб-стандартам, если разработаны должным образом, не должны отличаться от тех сайтов, что используют нагромождение хромой разметки. Тем не менее, исходный код веб-сайта будет сильно отличаться (его вы можете увидеть, если выберите в контекстном меню пункт «Код», «Исходный код», «Исходный текст» — название скорее всего будет отличаться от браузера к браузеру). Сайты, которые соответствуют стандартам, будут иметь красивую разметку без внедренного форматирования или с небольшим его количеством. Бросив взгляд, вы едва ли заметите разницу, но, поверьте мне, незрячие люди, использующие программы чтения экрана, и поисковые системы заметят ее сразу же. Мы уже рассказывали о преимуществах использования веб-стандартов в прошлой статье.

Самый простой способ проверить сайт на соблюдение веб-стандартов, – это воспользоваться валидатором, полезным инструментом, который доступен онлайн. Консорциум Всемирной паутины сделал доступным его по адресу http://validator.w3.org/. Вы можете (и должны) использовать этот инструмент для проверки всех сайтов, которые вы разрабатываете, на наличие ошибок в HTML-XHTML-коде. CSS можно проверить при помощи CSS-валидатора, расположенного по адресу: http://jigsaw.w3.org/css-validator/. Пройдите по указанным ссылкам и протестируйте несколько ваших любимых сайтов.

Гарантия того, что ваши сайты проходят валидацию, – это лишь половина дела. Как проверить, что браузеры следуют веб-стандартам? Web Standards Project разработал серию тестов, которые называются Acid-тестами. Эти тесты используют некоторые комплексные HTML и CSS правила (а также дополнительную разметку и код), чтобы увидеть, сможет ли браузер отобразить тестовые изображения надлежащим образом. Последняя версия Acid-теста, Acid3, находится в разработке. Подробную информацию о тестах Acid вы можете найти на сайте http://www.acidtests.org/. Там же вы можете проверить свой браузер на соответствие стандартам.

Соответствие современных сайтов стандартам

Используют ли главные веб-сайты веб-стандарты или они применяют хаки? Давайте взглянем на несколько различных компаний и посмотрим, как они оцениваются сервисом проверки разметки, который был создан W3C. Вы будете удивлены, как много крупных сайтов не выдерживают тестов проверки на соблюдение веб-стандартов; однако не унывайте — нет такой причины, почему вы не можете сделать лучше и почему ваши сайты не пройдут валидацию. Читая отчеты ниже, имейте в виду, что чем крупнее и сложнее сайт, тем сложнее заставить его проходить проверочные тесты (есть и другие факторы, которые необходимо учитывать, например, используемые технологии). Также имейте в виду, что с момента написания этой статьи сайты, которые рассматриваются ниже, могли измениться, хотя они прекрасно иллюстрируют мои доводы. Я советую вам во время чтения проверить эти сайты валидатором.