Un estándar es un documento técnico que especifica cómo se comporta una tecnología. (Para algunas tecnologías, puede ser algún otro tipo de estándar técnico ). Eso es todo lo que son y por qué existen: son documentos y describen la tecnología.
Estos documentos son creados por un órgano rector que tiene la autoridad y la confianza necesarias para que puedan decidir cómo funciona esa tecnología y para que las personas se preocupen cuando publican un documento de especificación como estándar. Un organismo rector podría producir muchos estándares, para diferentes tecnologías o diferentes versiones de una tecnología. El órgano rector también podría ser conocido como mantenedores, autores, custodios, etc. de las normas.
(En contraste con lo que describe Mathew, un estándar no es el órgano de gobierno ni la tecnología en sí. Es un documento que describe la tecnología o una versión particular de la misma).
Algunos estándares de ejemplo para las tecnologías que ha mencionado (y otros):
- El estándar SOAP , mantenido por W3C.
- El estándar URI, definido en STD66 , mantenido por Internet Engineering Task Force (IETF), que también trabaja en ...
- Las especificaciones HTTP 1.1 , creadas por el Grupo de trabajo HTTP . Estas son solicitudes de comentarios (RFC), pero sin embargo especifican cómo funciona HTTP. Estos estándares son en realidad muy nuevos , solo se lanzaron en junio de 2014. HTTP 1.1 fue definido previamente en RFC 2616 , por el Grupo de Trabajo de Red IETF.
- Especificaciones de HTML, definidas en el Estándar de Vida HTML . Está escrito por el Grupo de trabajo de tecnología de aplicación de hipertexto web (WHATWG). W3C vuelve a publicar y bifurca varias versiones de este estándar, lanzándolas como HTML 4 , XHTML 1.0 y HTML5 entre otras versiones. WHATWG no está contento con que hagan esto.
- Java tiene un estándar, mantenido por Oracle. Sus diversas versiones tienen diferentes estándares, y puede descargar el estándar Java EE 7 usted mismo.
- La especificación de lenguaje C # 5.0 , creada por un equipo de Microsoft. Las versiones anteriores tienen sus propios documentos de especificación separados.
HTML es un buen ejemplo del hecho de que las diferentes versiones de un lenguaje a menudo tendrán diferentes estándares. Las diversas versiones tienen diferentes documentos que describen cómo se deben manejar las distintas versiones del lenguaje.
Mientras tanto, HTTP es uno de los muchos ejemplos de un movimiento estándar entre grupos: primero por el Grupo de trabajo de red, luego al Grupo de trabajo de HTTP, aunque ambos grupos formaban parte del IETF. Otras tecnologías se han movido entre compañías, como HTML (nuevamente), cuya versión 2 fue creada por el IETF en RFC1866 .
¿Por qué existen los estándares?
Existen para darnos una garantía de cómo funcionarán las cosas.
La especificación HTML5 me dice cómo los diferentes navegadores manejarán y mostrarán el marcado HTML5 que escribo, suponiendo que implementen el estándar correctamente (lo que históricamente ha sido un problema). El estándar C ++ 11 me dirá cosas sobre lo que varios códigos C ++ 11 que escribo harán o no.
Del mismo modo, si estoy escribiendo un navegador, el estándar HTML5 me dirá cómo necesito manejar varias piezas de marcado HTML5 para que las personas obtengan lo que esperan. Si estoy escribiendo un compilador de C ++ 11, el estándar C ++ 11 me dirá lo que necesito hacer para implementar el lenguaje correctamente y hacer que el código de las personas funcione de la manera que esperan que funcione.
Por ejemplo, los autores de Microsoft C #. Puede descargar la especificación de lenguaje C # 5.0 por sí mismo. Este documento es una promesa de que el código C # que escriba debe comportarse como se describe en la especificación, en cualquier compilador que realmente implemente la especificación correctamente.
( Si hace cosas fuera de las especificaciones , se encuentra en un territorio indefinido y no hay ninguna garantía sobre lo que sucederá o no).
Históricamente, los estándares se remontan a cosas como roscas de tornillo , de modo que puedo tener alguna garantía de que si solicito un tornillo de tipo X, se ajustará en el orificio que he perforado y será intercambiable con otros tornillos de tipo X.
Lo que nos lleva de vuelta a la definición de la palabra "estándar" :
un ejemplo aceptado o aprobado de algo contra lo que otros son juzgados o medidos - Diccionario Collins
Una medida reconocida de comparación para el valor cuantitativo o cualitativo; Un criterio. - Diccionario médico de American Heritage® Stedman
es decir, con lo que compara sus cosas para asegurarse de que obtendrá lo que espera.