Internazionalizzazione (i18n)
L'internazionalizzazione (i18n) è il processo di progettazione e ingegneria che garantisce che un prodotto o sito web possa essere adattato a varie lingue e regioni senza richiedere modifiche al codice. Coinvolge l'astrazione delle stringhe di testo, l'abilitazione di formati di data variabili e il supporto Unicode per caratteri speciali.
Costruire le fondamenta per la localizzazione
Non puoi tradurre un sito se il codice non lo supporta. L'internazionalizzazione (i18n) è il "lavoro preparatorio" — costruire la struttura della casa prima di dipingere le pareti. Testo codificato in modo fisso come
Hello World
è impossibile da tradurre senza modificare il codice sorgente. Il codice internazionalizzato utilizza variabili:{greeting_text}
che possono essere sostituite per qualsiasi lingua. Allo stesso modo, i database devono supportare la codifica UTF-8 per memorizzare caratteri cinesi, i layout dell'interfaccia utente devono adattarsi per accogliere il testo tedesco (il 30% più lungo dell'inglese) e i sistemi di data devono gestire DD/MM/AAAA vs. MM/GG/AAAA. L'i18n avviene una volta durante lo sviluppo; la localizzazione avviene ripetutamente per ogni nuovo mercato.Hardcoded vs. Internazionalizzato (i18n)
Ciao Mondo
in HTML{t("saluto")}
caricato dal fileImpatto nel Mondo Reale
L'app SaaS ha il testo in inglese codificato in modo fisso in oltre 500 componenti React
Il lancio della versione francese richiede la modifica di 500 file
6 mesi di sviluppo, costo $200K, alto rischio di bug
App creata con i18n fin dal primo giorno, tutto il testo nei file di lingua
Il lancio francese richiede un nuovo file di traduzione fr.json
2 settimane, costo $15K, zero modifiche al codice