Internacionalização (i18n)
Internacionalização (i18n) é o processo de design e engenharia para garantir que um produto ou website pode ser adaptado a várias línguas e regiões sem necessidade de alterações de código. Envolve a abstração de strings de texto, a ativação de formatos de data variáveis e o suporte a Unicode para caracteres especiais.
Construindo a Base para a Localização
Não é possível traduzir um site se o código não o suportar. i18n é o "trabalho preparatório" — construir a estrutura da casa antes de pintar as paredes. Texto codificado de forma rígida como
Hello World
é impossível de traduzir sem editar o código fonte. Código internacionalizado usa variáveis:{greeting_text}
que podem ser trocadas por qualquer idioma. Da mesma forma, bases de dados devem suportar codificação UTF-8 para armazenar caracteres chineses, layouts de interface de utilizador devem flexibilizar-se para acomodar texto alemão (30% mais longo que inglês), e sistemas de data devem lidar com DD/MM/AAAA vs. MM/DD/AAAA. i18n acontece uma vez durante o desenvolvimento; localização acontece repetidamente para cada novo mercado.Hardcoded vs. Internacionalizado (i18n)
Olá Mundo
em HTML{t("greeting")}
carregado do ficheiroImpacto no Mundo Real
Aplicação SaaS tem texto em inglês codificado de forma rígida em mais de 500 componentes React
Lançar a versão francesa requer a edição de 500 ficheiros
6 meses de desenvolvimento, custo de 200 mil dólares, alto risco de bugs
Aplicação criada com i18n desde o primeiro dia, todo o texto em ficheiros de idioma
Lançamento em francês requer um novo ficheiro de tradução fr.json
2 semanas, custo de 15.000€, zero alterações de código