Internationalisation (i18n)
L'internationalisation (i18n) est le processus de conception et d'ingénierie qui consiste à s'assurer qu'un produit ou un site Web peut être adapté à différentes langues et régions sans nécessiter de modifications de code. Elle implique l'abstraction des chaînes de caractères, l'activation de formats de date variables et la prise en charge de Unicode pour les caractères spéciaux.
Construire les fondations de la localisation
Vous ne pouvez pas traduire un site si le code ne le prend pas en charge. L'i18n est le « travail préparatoire » : construire le cadre de la maison avant de peindre les murs. Un texte codé en dur comme <p>Bonjour World</p> est impossible à traduire sans modifier le code source. Le code internationalisé utilise des variables : <p>{greeting_text}</p> qui peuvent être remplacées par n'importe quelle langue. De même, les bases de données doivent prendre en charge l'encodage UTF-8 pour stocker les caractères chinois, les mises en page de l'interface utilisateur doivent s'adapter pour accueillir le texte allemand (30 % plus long que l'anglais), et les systèmes de date doivent gérer le format JJ/MM/AAAA par rapport au format MM/JJ/AAAA. L'i18n se fait une seule fois pendant le développement ; la localisation se fait de manière répétée pour chaque nouveau marché.
Codé en dur vs. Internationalisé (i18n)
Impact dans le monde réel
L'application SaaS a du texte anglais codé en dur dans plus de 500 composants React
Le lancement de la version française nécessite la modification de 500 fichiers
6 mois de développement, 200 000 $ de coût, risque élevé de bugs
Application construite avec i18n dès le premier jour, tout le texte dans des fichiers de langue
Le lancement français nécessite un nouveau fichier de traduction fr.json
2 semaines, 15 000 $ de coût, zéro modification de code