La internacionalización, también conocida como i18n, es el proceso de desarrollar productos de software de modo que puedan ser localizados fácilmente. En términos de desarrollo web, se trata de adaptar la aplicación a diferentes idiomas y regiones sin tener que realizar cambios de ingeniería. En la arquitectura de Angular, se permite el soporte i18n utilizando las herramientas disponibles en el Angular CLI.
Angular CLI proporciona una variedad de herramientas i18n que facilitan la adaptación de la aplicación a diferentes idiomas y regiones. Una de esas herramientas es la i18n
atributo de la etiqueta html. Este singular atributo nos permite marcar el contenido estático que necesita ser traducido.
Por ejemplo, el siguiente código muestra cómo usar la i18n
atributo para marcar un texto para su traducción:
<h1 i18n="site header|An introduction to this site@@siteHeader">Hello i18n!</h1>
Una vez que el contenido estático está marcado para la traducción, Angular CLI provee la potente herramienta @angular/localize
que se utiliza para generar versiones de la aplicación en diferentes idiomas. Esta herramienta extrae las cadenas de texto marcadas del código de la aplicación y genera archivos de traducción en formato XLIFF que son enviados a los traductores.
Además de marcar y extraer el contenido estático, Angular CLI también proporciona funcionalidades para compilar las versiones localizadas. A través de la línea de comandos, podemos compilar diferentes versiones de nuestra aplicación usando los archivos traducidos.
En general, adoptar la internacionalización a través de las herramientas i18n del Angular CLI permite a los desarrolladores resolver el desafío de la localización de una manera eficiente y efectiva. De esta manera, la aplicación será accesible a un público global, ya que podrá mostrar la interfaz y otros elementos en los idiomas de preferencia del usuario final.