Internacionalização (i18n)
Internacionalização (i18n) é o processo de design e engenharia para garantir que um produto ou site possa ser adaptado a várias línguas e regiões sem exigir 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
Você não pode 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 hardcoded 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, bancos de dados devem suportar codificação UTF-8 para armazenar caracteres chineses, layouts de interface de usuário devem se adaptar para acomodar texto em alemão (30% mais longo que em inglês), e sistemas de data devem lidar com DD/MM/AAAA vs. MM/DD/AAAA. i18n acontece uma vez durante o desenvolvimento; a localização acontece repetidamente para cada novo mercado.Hardcoded vs. Internacionalizado (i18n)
Olá Mundo
em HTML{t("greeting")}
carregado do ficheiroImpacto no Mundo Real
A aplicação SaaS tem texto em inglês codificado em mais de 500 componentes React
Lançar a versão francesa requer a edição de 500 arquivos
6 meses de desenvolvimento, custo de 200.000 $, alto risco de bugs
App criada com i18n desde o primeiro dia, todo o texto em arquivos de idioma
O 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