веб стандарты что это такое
СОДЕРЖАНИЕ
Обзор
Веб-стандарты состоят из следующего:
В более широком смысле, следующие технологии также могут называться «веб-стандартами»:
Движение веб-стандартов
Общее использование
При обсуждении веб-стандартов следующие публикации обычно считаются основополагающими:
Работа W3C над Семантической паутиной в настоящее время сосредоточена на публикациях, связанных со структурой описания ресурсов (RDF), сбором описаний ресурсов из диалектов языков (GRDDL) и языком веб-онтологий (OWL).
Публикации по стандартам и органы
Интернет-стандарт IETF характеризуется высокой степенью технической зрелости и общепринятым убеждением, что указанный протокол или услуга приносит значительную пользу Интернет-сообществу. Спецификации, которая достигает статуса Standard, присваивается номер в серии IETF STD с сохранением исходного номера IETF RFC.
Нестандартные и проприетарные давления производителей
HTML 5 содержит многочисленные «умышленные нарушения» других спецификаций, чтобы учесть ограничения существующих платформ.
Тестирование на соответствие веб-стандартам
Существуют тесты на соответствие как для HTML-кода, сгенерированного веб-сайтами, так и для точной интерпретации HTML-кода веб-браузерами.
Тесты на соответствие кода веб-сайта
W3C предлагает онлайн-услуги для тестирования веб-сайтов напрямую как для разработчиков веб-сайтов, так и для пользователей веб-сайтов. Это включает:
Тесты на соответствие для веб-браузеров
Всемирная сеть (веб) и веб-стандарты
Статья содержит общую информацию о всемирной сети (the Web) — откуда она взялась, что такое веб-стандарты, как они связанны, почему «веб разработчик» отличный карьерный выбор и чему полезному можно научиться изучая этот курс.
Краткая история сети веб
Мы постарались максимально кратко изложить здесь информацию. Если вы более детально заинтересованы в истории веб сети, то попробуйте поискать это в интернете.
В конце 1960-х военные США разработали коммуникационную сеть ARPANET. Вполне можно её рассматривать в качестве прародителя современной сети, так как она работала с помощью коммутации пакетов, и для неё впервые была внедрена сетевая модель TCP/IP. Эти две технологии послужили основой, на которой затем был построен интернет.
В 1980 году Тим Бернерс-Ли (aka TimBL) написал программу под названием ENQUIRE, которая позволяла устанавливать связь между двумя узлами. Ничего не напоминает?
В 1989 году TimBL выступил в организации ЦЕРН с идеями о методах структурирования, обработке и обмена информацией (Information Management: A Proposal), предложив при этом концепцию «гипертекста». Идеи Тима были одобрены и он начал воплощать в реальность свой проект. Современная сеть построена на основании его работ.
К концу 1990-го года Тим Бернерс разработал все необходимые для запуска сети средства — HTTP, HTML, первый в мире веб браузер (WorldWideWeb), сервер HTTP и несколько веб страниц для наглядности.
В течение нескольких последующих лет веб сеть расширялась, выпускались новые браузеры, были установлены тысячи серверов и созданы миллионы веб страниц. Как и обещали, достаточно краткая история.
Веб-стандарты
В качестве примера приведём стандарт HTML Living Standard. Он описывает как HTML (все элементы HTML, связанные с ними API и остальные близкие технологии) должны быть реализованы.
«Open» standards
One of the key aspects of web standards, which TimBL and the W3C agreed on from the start, is that the web (and web technologies) should be free to both contribute and use, and not encumbered by patents/licensing. Therefore anyone can write the code to build a website for free, and anyone can contribute to the standards creation process, where the specs are written.
Because web technologies are created openly, in collaboration between many different companies, it means that no one company gets to control them, which is a really good thing. You wouldn’t want a single company suddenly deciding to put the entire web behind a paywall, or releasing a new version of HTML that everyone has to buy to continue making web sites, or worse still, just deciding they aren’t interested any more and just turning it off.
This allows the web to remain a freely-available public resource.
Не разорви сеть
Популярная в области веб-стандартов фраза гласит: «не разорви сеть». Это означает, что каждая новая веб-технология должна быть совместима со всеми предыдущими технологиями (поэтому старые сайты до сих пор работают), и со всеми последующими (разрабатываемые в последствии технологии, в свою очередь, должны быть совместимы с имеющимися). В процессе изучения представленного здесь материала вы начнёте понимать каким образом это реализуется.
Being a web developer is good
The web industry is a very attractive market to enter if you are looking for a job. Recent published figures say that there are currently around 19 million web developers in the world, and that figure is set more than double in the next decade. And at the same time, there is a skill shortage in the industry — so what better time to learn web development?
It isn’t all fun and games however — building web sites is a more complicated proposition than it used to be, and you’ll have to put some time in to studying all the different technologies you need to use, all the techniques and best practices you need to know, and all the typical patterns you’ll be called upon to implement. It’ll take you a few months to really start to get into it, and then you’ll need to keep learning so that your knowledge stays up-to-date with all the new tools and features that appear on the web platform, and keep practicing and refining your craft.
The only constant is change.
Does this sound hard? Don’t worry — we aim to give you everything you need to know to get started, and things will get easier. Once you embrace the constant change and uncertainty of the web, you’ll start to enjoy yourself. As a part of the web community, you’ll have an entire web of contacts and useful material to help you, and you’ll start to enjoy the creative possibilities it brings.
You’re a digital creative now. Enjoy the experience, and the potential for earning a living.
Overview of modern web technologies
There are a number of technologies to learn if you want to be a front-end web developer. In this section we will describe them briefly. For a more detailed explanation of how some of them work together, read our article How the web works.
Browsers
You are probably reading these words inside a web browser in this very moment (unless you’ve printed it out, or are using assistive technology, such as a screenreader to read it out to you). Web browsers are the software programs people use to consume the web, and include Firefox, Chrome, Opera, Safari, and Edge.
Hypertext Transfer Protocol, or HTTP, is a messaging protocol that allows web browsers to communicate with web servers (where web sites are stored). A typical conversation goes something like
The actual syntax for HTTP messages (called requests and responses) is not that human-readable, but this gives you the basic idea.
HTML, CSS, and JavaScript
HTML, CSS, and JavaScript are the main three technologies you’ll use to build a website:
Hypertext markup language, or HTML, is a markup language consisting of different elements you can wrap (mark up) content in to give it meaning (semantics) and structure. Simple HTML looks like this:
If we adopted a house-building analogy, HTML would be like the foundations and walls of the house, which give it structure and hold it together.
Cascading Style Sheets (CSS) is a rule-based language used to apply styles to your HTML, for example setting text and background colors, adding borders, animating things, or laying out a page in a certain way. As a simple example, the following code would turn our HTML paragraph red:
In the house analogy, CSS is like the paint, wallpaper, carpets and paintings you’d use to make the house look nice.
JavaScript is the programming language we use to add interactivity to web sites, from dynamic style switching, to fetching updates from the server, right through to complex 3D graphics. The following simple JavaScript will store a reference to our paragraph in memory and change the text inside it:
In the house analogy, JavaScript is like the cooker, TV, Microwave, or hairdryer — the things that give your house useful functionality
Tooling
Once you’ve learned the «raw» technologies that can be used to build web pages (such as HTML, CSS, and JavaScript), you’ll soon start to come across various tools that can be used to make your work easier or more efficient. Examples include:
Server-side languages and frameworks
HTML, CSS, and JavaScript are front-end (or client-side) languages, which means they are run by the browser to produce a website front-end that your users can use.
There are another class of languages called back-end (or server-side) languages, meaning that they are run on the server before the result is then sent to the browser to be displayed. A typical use for a server-side language is to get some data out of a database and generate some HTML to contain the data, before then sending the HTML over to the browser to display it to the user.
Example server-side languages include ASP.NET, Python, PHP, and NodeJS.
Web best practices
We have briefly talked about the technologies that you’ll use to build websites. Now let’s discuss the best practices you should employ to make sure you are using those technologies in the best way that you can.
When doing web development, the main cause of uncertainty comes from the fact that you don’t know what combination of technology each user will use to view your web site:
Because you don’t know exactly what your users will use, you need to design defensively — make your web site as flexible as possible, so that all of the above users can make use of it, even if they might not all get the same experience. In short, we are trying to make the web work for all, as much as possible.
You’ll come across the below concepts at some point in your studies.
Место веб стандартов, как это вижу я
В сообществе веб-разработчиков ужe длительное время не утихают споры о необходимости соблюдения веб-стандартов. Суть же самих стандартов — это попытка сформировать непосредственно правила и критерии корректности кода и структуры веб-сайтов. В данный момент своего развития веб-разработка является одним из самых свободных видов разработки так, как современные браузеры без проблем отображают код сайтов написанный с ошибками. На этом основании появляется вполне резонное мнение, что нет никаких видимых причин ориентироваться на стандарты которые не нужны браузерам умеющим корректно отображать не корректно сделанные ресурсы, причем конечный пользователь не видит и не подозревает о существовании разницы. Так же существует достаточно спорное мнение об игнорировании структурных элементов поисковыми системами. Но на деле вопрос несколько более широкий.
Стандарты
Наиболее авторитетными структурами формирующими «погоду» в мире веб-стандартов являются две организации: Консорциум Всемирной паутины (W3C) и Рабочая группа по стандартизации Веб (WaSP)
Консорциум W3C образовался в 1994 году, с тех пор выпустив более 80 технических спецификаций и рекомендаций. В числе специфицированных Консорциумом технологий – язык разметки гипертекста HTML (HyperText Markup Language), расширяемый язык разметки гипертекста XHTML (Extensible HyperText Markup Language), каскадные таблицы стилей CSS (Cascading Style Sheets), объектная модель документов DOM (Document Object Model).
WaSP — организация, созданная независимой группой веб-разработчиков для поддержки разработчиков веб-контента и программного обеспечения в контексте более полной реализации рекомендаций W3C.
Большинство веб-разработчиков привыкло понимать под понятием веб-стандартов определенную спецификацию о том как необходимо оформлять код. Но помимо так называемой «валидности» кода стандарты подразумевают под собой более глубокое, логически правильное составление контента. Другими словами, документ может быть полностью «валидным», но совершенно не соответствовать стандарту. В соответствии со стандартом все логические элементы должны использоваться по своему непосредственному назначению. Это позволит документу более свободно взаимодействовать с внешними сервисами и анализаторами. Другими словами, документ сформированный на семантической основе – это правильное структурирование документа, при котором каждый структурный элемент HTML выбирается не на основе того, как он выглядит в браузере, а на основе его семантического предназначения.
Семантическая верстка подразумевает следование концепции разделения структуры и представления. Рекомендуемая Спецификацией HTML 4.01, концепция призывает использовать язык разметки гипертекста только для описания структуры документа, а для визуального представления этой структуры предлагается другой официально утвержденный W3C стандарт – каскадные таблицы стилей CSS (Cascading Style Sheets). Также необходимо обратить внимание на то, что, согласно концепции разделения структуры и представления, все декоративные элементы необходимо описывать отдельно от содержания документа.
Таким образом — использование сложной блочной структуры для реализации элементов дизайна
вместо использования таблиц для того же самого