Internationalisation (i18n)
Définition de l'internationalisation (i18n)
L’i18n, abréviation de l'internationalisation, désigne l’ensemble des techniques permettant de préparer une application web ou mobile à être traduite et adaptée à plusieurs langues et cultures.
Concrètement, il ne s’agit pas de traduire le contenu directement (ça, c’est la localisation — l10n), mais de concevoir le produit pour qu’il puisse facilement accueillir des traductions, formats de date, devises, règles d’affichage … sans devoir réécrire le code à chaque fois.
Pourquoi l'internationalisation (i18n) est essentielle ?
L’internationalisation est une étape stratégique dans la conception d’un produit numérique destiné à un public international. Elle permet de :
- Préparer la scalabilité internationale dès la première version du produit.
- Réduire les coûts et les erreurs lors de l’ajout de nouvelles langues.
- Offrir une meilleure expérience utilisateur locale, sans hack ni contournement.
C’est un pré-requis technique qui évite les refontes douloureuses lorsque l’entreprise souhaite internationaliser son produit.
Que couvre concrètement l'internationalisation (i18n) ?
La mise en place d'une stratégie i18n ne se limite pas à la simple langue. Elle couvre l’ensemble des éléments d’un site ou d’une application qui doivent être adaptables selon la langue, la culture ou le contexte local. Cela inclut notamment :
- Les chaînes de texte : extraire tous les textes de l’interface dans des fichiers de ressources dédiés (
fr.json
,en.json
, ...). - Les formats de date, heure et numéros : adapter ces éléments aux conventions locales (
01/12/2025
vs12/01/2025
dans certains pays). - Les devises et formats monétaires : afficher les bonnes unités selon la locale (
1 200,00 €
vs$1,200.00
). - Le sens de lecture : supporter les langues en lecture de droite à gauche (comme l’arabe ou l’hébreu).
- Les règles de pluriel et de grammaire : gérer les formes variées selon les langues (singulier / pluriel, genres, ...).
- Les unités, systèmes de mesure ou expressions culturelles : adapter le contenu à la réalité locale sans trahir son sens.
Comment implémenter l'internationalisation (i18n) ?
L’implémentation de l’i18n repose toujours sur deux principes fondamentaux :
- Séparer le contenu du code. Tous les textes doivent être externalisés dans des fichiers de langue, et jamais écrits en dur dans le HTML ou le JS.
- Utiliser un système de détection et de gestion des locales. Cela permet de charger automatiquement la langue appropriée selon les préférences du navigateur, les paramètres utilisateur ou l’URL.
La complexité va, elle, dépendre du :
- Moment auquel vous intégrez i18n. Plus l’internationalisation est pensée en amont, plus elle est simple à implémenter. L’ajouter après coup peut nécessiter de restructurer une grande partie du code ou du contenu.
- Framework ou CMS utilisé pour votre solution. Certains d'entre eux comme Laravel , Next.js ou Symfony offrent des outils natifs pour gérer l’i18n de manière propre et évolutive. D’autres solutions demandent plus de travail manuel ou des plugins externes.