¿Qué es y cómo funciona UTF-8?
Quizá nunca nos hayamos preguntado cómo funcionan determinadas cosas en internet, pero lo cierto es que, aunque lo parezca, nada sucede porque sí. Por ejemplo, el hecho de que el contenido se muestre de manera correcta y sin caracteres raros es posible gracias a UTF-8.
¿Qué es el método Unicode?
Para poder entender el formato de codificación UTF-8, primero es necesario saber acerca del método Unicode. Un estándar que permite la codificación de los caracteres universal que permite el procesamiento, almacenamiento e intercambio de datos; sea cual sea el idioma o los protocolos que se estén empleados en la transmisión. Es algo así como una traducción de números a letras, ya que si el ser humano necesita letras para entender la información, las máquinas necesitan números.
Así, cada vez que un ordenador tiene que representar algún caracter lo que hace es realizar una búsqueda en la base de datos de Unicode; de manera que pueda conocer cuál es el número que ese determinado caracter tiene asignado. Esto recibe el nombre de punto de código y quiere decir que cada uno de los caracteres está codificado. El mismo proceso se lleva a cabo con cualquier búsqueda en cualquier idioma; incluso es válido para signos de puntuación o iconos, ya que Unicode se ajusta a las necesidades de los usuarios.
En el sistema Unicode existes tres formas de codificación que se conocen como Unicode Trasnformation Format (UTF). Tanto UTF-8, como UTF-16 o UTF-32 funcionan de la misma manera. La única diferencia entre estas tres maneras de codificar es el número de byts que admiten, lo que les hace más adecuadas para unos u otros propósitos. Así, UTF-8 está orientada a símbolos de longitud variable, UTF-16 para representar BMP y UTF-32 para longitud fija.
¿En qué consiste UTF-8?
Para poder codificar los caracteres Unicode y hacer que los ordenadores puedan interpretarlos, UTF-8 divide estos caracteres en grupos; donde cada uno de ellos tiene en cuenta el número de bytes que son necesarios para la codificación. De esta forma:
- 1 byte para los 128 caracteres que forman parte de US-ASCII.
- 2 bytes para los 1920 caracteres de los principales idiomas.
- 3 bytes para los caracteres planos de multilingüe, entre los que se encuentran los del idioma chino, japonés y coreano.
- 4 bytes para los símbolos matemáticos y alfabetos clásicos que se emplean en el mundo académico.
Sin un sistema de este tipo no sería posible visualizar documentos online que no hayan sido elaborados en el lenguaje que nosotros somos capaces de entender. Y, si cada uno de estos idiomas tuviera su propio sistema de codificación, no sería posible la transmisión de los datos; de ahí que contar con un sistema universal como UTF-8 sea imprescindible para la comunicación en internet.
Las enormes posibilidades que ofrece UTF-8 hace que sea el método de codificación más utilizado en casi todos los sistemas o lenguajes de programación. Es por eso que a la hora de emplear HTML debes añadir en la cabecera la etiqueta correspondiente a UTF-8 para hacerle saber al navegador el sistema de codificación que se está empleando. Igualmente en el caso de los clientes de correo, si no indicas este sistema es probable que no puedas enviar o recibir correos de usuarios internacionales.