Стандарт - это технический документ, определяющий, как ведет себя технология. (Для некоторых технологий это может быть какой-то другой технический стандарт .) Это все, что они есть и почему они существуют: это документы, и они описывают технологию.
Эти документы созданы руководящим органом, который обладает полномочиями и доверием, необходимыми для того, чтобы они могли принимать решение о том, как работает эта технология, и чтобы люди были обеспокоены, когда выпускают документ спецификации в качестве стандарта. Управляющий орган может разработать множество стандартов для разных технологий или разных версий технологии. Руководящий орган также может быть известен как сопровождающие, авторы, хранители и т. Д. Стандартов.
(В отличие от того, что описывает Мэтью, стандарт не является ни руководящим органом, ни самой технологией. Это документ, описывающий технологию, или ее конкретную версию.)
Некоторые примеры стандартов для технологий, которые вы упомянули (и другие):
- Стандарт SOAP , поддерживаемый W3C.
- Стандарт URI, определенный в STD66 , поддерживается Инженерной группой по Интернету (IETF), которая также работает над ...
- Спецификации HTTP 1.1 , разработанные Рабочей группой HTTP . Это запросы для комментариев (RFC), но, тем не менее, они определяют работу HTTP. Эти стандарты на самом деле очень новые , они были выпущены только в июне 2014 года. HTTP 1.1 был ранее определен в RFC 2616 Сетевой рабочей группой IETF.
- Спецификации HTML, определенные в стандарте HTML Living . Он создан Рабочей группой по технологиям веб-гипертекста (WHATWG). W3C повторно публикует и разветвляет различные версии этого стандарта, выпуская их как HTML 4 , XHTML 1.0 и HTML5 среди других версий. WHATWG недоволен тем, что они делают это.
- У Java есть стандарт, поддерживаемый Oracle. Его различные версии имеют разные стандарты, и вы можете загрузить стандарт Java EE 7 самостоятельно.
- Спецификация языка C # 5.0 , созданная командой Microsoft. Предыдущие версии имеют свои собственные отдельные документы спецификации.
HTML является хорошим примером того, что разные версии языка часто имеют разные стандарты. Различные версии имеют разные документы, описывающие, как должны обрабатываться различные версии языка.
HTTP, между тем, является одним из многих примеров стандартного перемещения между группами: сначала Сетевой рабочей группой, затем - Рабочей группой HTTP, хотя обе группы были частью IETF. Другие компании переместились между компаниями, например HTML (опять же), версия 2 которого была создана IETF в RFC1866 .
Почему существуют стандарты?
Они существуют, чтобы дать нам гарантию того, как все будет работать.
Спецификация HTML5 говорит мне, как различные браузеры будут обрабатывать и отображать разметку HTML5, которую я пишу, при условии, что они правильно реализуют стандарт (что исторически было проблемой). Стандарт C ++ 11 расскажет мне о том, что будет делать или не писать код на C ++ 11, который я пишу.
Аналогично, если я пишу браузер, стандарт HTML5 скажет мне, как мне нужно обрабатывать различные фрагменты HTML5-разметки, чтобы люди получали то, что ожидали. Если я пишу компилятор C ++ 11, стандарт C ++ 11 скажет мне, что мне нужно сделать, чтобы правильно реализовать язык и заставить код людей работать так, как они ожидают.
Например, авторы Microsoft C #. Вы можете скачать C # Language Specification 5.0 для себя. Этот документ обещает, что код C #, который вы пишете, должен вести себя так, как он описан в спецификации, в любом компиляторе, который фактически реализует спецификацию правильно.
( Если вы делаете что-то за пределами спецификации , вы находитесь на неопределенной территории, и нет никаких гарантий относительно того, что произойдет или не произойдет.)
Исторически стандарты возвращаются к таким вещам, как винтовая резьба , так что я могу иметь некоторую гарантию, что, если я закажу винт типа X, он будет соответствовать отверстию, которое я просверлил, и будет взаимозаменяем с другими винтами типа X.
Что возвращает нас к определению слова «стандарт» :
принятый или одобренный пример чего-то, с чем другие оцениваются или оцениваются - Словарь Коллинза
Признанная мера сравнения для количественного или качественного значения; критерий. - Американский медицинский словарь Heritage® Stedman
то есть то, с чем вы сравниваете свои вещи, чтобы убедиться, что вы получите то, что ожидаете.