Internacionalización (i18n)
La internacionalización (i18n) es el proceso de diseño e ingeniería que garantiza que un producto o sitio web pueda adaptarse a varios idiomas y regiones sin requerir cambios en el código. Implica abstraer cadenas de texto, habilitar formatos de fecha variables y admitir Unicode para caracteres especiales.
Construyendo las Bases para la Localización
No se puede traducir un sitio si el código no lo admite. i18n es el "trabajo de preparación": construir el armazón de la casa antes de pintar las paredes. El texto codificado de forma rígida como
Hello World
es imposible de traducir sin editar el código fuente. El código internacionalizado utiliza variables:{greeting_text}
que se pueden cambiar por cualquier idioma. De igual forma, las bases de datos deben admitir codificación UTF-8 para almacenar caracteres chinos, los diseños de interfaz deben ser flexibles para adaptarse al texto en alemán (un 30% más largo que en inglés) y los sistemas de fechas deben manejar DD/MM/AAAA frente a AAAA/MM/DD. La internacionalización (i18n) ocurre una sola vez durante el desarrollo; la localización ocurre repetidamente para cada nuevo mercado.Texto incrustado vs. Internacionalización (i18n)
Hola Mundo
en HTML{t("greeting")}
cargado desde archivoImpacto en el Mundo Real
La aplicación SaaS tiene texto en inglés incrustado en más de 500 componentes de React
El lanzamiento de la versión en francés requiere editar 500 archivos
6 meses de desarrollo, 200 mil dólares de costo, alto riesgo de errores
Aplicación construida con i18n desde el primer día, todo el texto en archivos de idiomas
El lanzamiento en francés requiere un nuevo archivo de traducción fr.json
2 semanas, costo de $15K, cero cambios de código