Internationalisation (i18n)
L'internationalisation (i18n) est le processus de conception et d'ingénierie visant à garantir qu'un produit ou un site Web puisse être adapté à diverses 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 bases 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
Bonjour le monde
est impossible à traduire sans modifier le code source. Le code internationalisé utilise des variables :{greeting_text}
qui peuvent être échangées pour n'importe quelle langue. De même, les bases de données doivent prendre en charge le codage 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 JJ/MM/AAAA par rapport au 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)
Bonjour le monde
en HTML{t("greeting")}
chargé depuis un fichierImpact 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, 200K $ 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, 15K $ de coût, zéro modification de code