# General Translation Knowledge Base: Internationalisation et localisation (i18n et l10n)
URL: https://generaltranslation.com/fr/kb/internationalization-vs-localization.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: L’internationalisation (i18n) désigne le travail de code et de conception qui permet à un même produit de prendre en charge de nombreux paramètres régionaux, par exemple le formatage des dates avec Intl ou la prise en charge du texte right-to-left. La localisation (l10n) l’adapte à un paramètre régional donné, ce qui englobe la traduction, mais aussi la devise, les formats de date, les unités, le ton et les aspects juridiques.
Category: Internationalisation
Last updated: 2026-10-20
Authors: Kevin Wu, Jackie Chen
Published: 2026-10-20

L’internationalisation rend un produit adaptable ; la localisation exploite cette capacité pour un marché donné. Développeurs, designers, traducteurs et équipes produit interviennent souvent sur les deux au cours d’une même livraison. La traduction n’est qu’une composante de la localisation, au même titre que les formats, la mise en page et les conventions locales.

## Qu&#39;est-ce que l&#39;internationalisation (i18n) et qu&#39;est-ce que la localisation (l10n) ?

* **L&#39;internationalisation (i18n)** prépare votre base de code à prendre en charge plusieurs paramètres régionaux (gestion des dates, des formes plurielles, des devises et de la mise en page). Le W3C la définit comme une démarche de conception et de développement qui « facilite la localisation » pour des publics de cultures, de régions ou de langues différentes. Concrètement, il s&#39;agit d&#39;extraire des chaînes codées en dur le texte affiché à l&#39;utilisateur, de formater les valeurs selon chaque paramètre régional, de prendre en charge l&#39;écriture right-to-left et d&#39;utiliser Unicode de bout en bout. (Voir l&#39;article du W3C [Localization vs. Internationalization](https://www.w3.org/International/questions/qa-i18n).)
* **La traduction** consiste à transposer un contenu d&#39;une langue vers une autre.
* **La localisation (l10n)** est le processus plus large qui consiste à adapter votre produit à un autre paramètre régional. Outre la traduction, le W3C cite les formats de nombres, de dates et d&#39;heures, les devises, le tri, les symboles, les icônes et les couleurs, les formats d&#39;adresse et de numéro de téléphone, les exigences juridiques, ainsi que les références susceptibles d&#39;être mal interprétées dans une autre culture.

Un paramètre régional désigne une langue ou un dialecte associé à ses conventions, et s&#39;écrit sous la forme d&#39;un code tel que `en-US` ou `de-DE`.

## D&#39;où viennent i18n, l10n et g11n

Ce sont des numéronymes : la première lettre, le nombre de lettres intermédiaires, puis la dernière lettre. « Internationalization » compte 18 lettres entre le i et le n, d&#39;où i18n ; « localization » en compte 10 entre le l et le n, d&#39;où l10n. « Globalization » devient g11n selon le même principe.

La globalisation est le moins bien défini des trois termes. Le W3C fait remarquer que certains l&#39;emploient comme synonyme d&#39;internationalisation, tandis que le [glossaire de globalisation de Microsoft](https://learn.microsoft.com/en-us/globalization/reference/glossary) réserve « globalisation » au fait de rendre une application fonctionnelle dans tous les paramètres régionaux, et « internationalisation » à l&#39;ensemble du processus de commercialisation d&#39;un logiciel à l&#39;échelle mondiale. Lorsque vous rencontrez g11n, vérifiez dans quel sens l&#39;auteur l&#39;emploie.

## La localisation est-elle la même chose que la traduction ?

La traduction n&#39;est qu&#39;une étape de la localisation. Le [guide de localisation de Microsoft](https://learn.microsoft.com/en-us/globalization/localization/localization) prend l&#39;exemple d&#39;une phrase indiquant le prix d&#39;un billet de train à une date donnée : la traduire en allemand ne suffit pas, car le prix doit être exprimé en euros et la date au format jour-mois-année. Ce même guide souligne que localiser un contenu de l&#39;anglais américain vers l&#39;anglais britannique peut ne nécessiter aucune traduction, mais simplement des ajustements d&#39;orthographe, de vocabulaire et de format.

## Un exemple pour chacun

**L&#39;internationalisation est une modification du code.** Voici un récapitulatif de commande, avant et après :

```js title="order-summary.mjs"
const date = new Date(Date.UTC(2026, 6, 30));
const total = 1234.5;

// Avant : le texte en anglais, l'ordre des dates à l'américaine et le symbole dollar sont codés en dur
console.log(
  `Order placed on ${date.getUTCMonth() + 1}/${date.getUTCDate()}/${date.getUTCFullYear()}. Total: $${total.toFixed(2)}`
);

// Après : le texte provient d'un message propre à chaque paramètre régional, et Intl met en forme les valeurs
const messages = {
  'en-US': 'Order placed on {date}. Total: {total}',
  'de-DE': 'Bestellt am {date}. Gesamt: {total}',
};

function orderSummary(locale, currency) {
  const values = {
    date: new Intl.DateTimeFormat(locale, { timeZone: 'UTC' }).format(date),
    total: new Intl.NumberFormat(locale, { style: 'currency', currency }).format(total),
  };
  return messages[locale].replace(/\{(\w+)\}/g, (_, key) => values[key]);
}

console.log(orderSummary('en-US', 'USD'));
console.log(orderSummary('de-DE', 'EUR'));
```

Exécution avec Node.js 24 :

```text title="Output"
Order placed on 7/30/2026. Total: $1234.50
Order placed on 7/30/2026. Total: $1,234.50
Bestellt am 30.7.2026. Gesamt: 1.234,50 €
```

Le code de formatage fonctionne avec l&#39;un ou l&#39;autre des paramètres régionaux ; le message allemand est fourni séparément. `Intl.NumberFormat` met en forme un montant dans la devise choisie ; il ne convertit pas les dollars en euros. Le montant identique utilisé ici n&#39;est qu&#39;une illustration, pas un calcul de taux de change.

**La localisation, c&#39;est la page adaptée.** Localiser une page produit américaine pour l&#39;Allemagne ne se résume pas à traduire les mots :

| Élément                   | Page en-US                        | Page de-DE                                 |
| ------------------------- | --------------------------------- | ------------------------------------------ |
| Prix                      | $49.00                            | 49,00 €                                    |
| Date                      | July 30, 2026                     | 30. Juli 2026                              |
| Horaires d&#39;assistance | 3:00 PM                           | 15:00                                      |
| Poids                     | 2.2 lb                            | 1 kg                                       |
| Ton                       | &quot;Start your free trial&quot; | Vouvoiement avec « Sie » au lieu de « du » |

Les formats des trois premières lignes sont fournis par `Intl` une fois le code internationalisé. L&#39;unité, le ton et l&#39;opportunité de modifier le prix lui-même sont des décisions de localisation à prendre pour chaque marché.

## Qui est responsable de l’i18n et de la l10n ?

* **Les développeurs** internationalisent : ils encapsulent ou extraient les chaînes, ajoutent un formatage adapté au paramètre régional et la gestion des formes plurielles, mettent en place un routage par paramètre régional et adaptent les mises en page aux textes plus longs et aux systèmes d’écriture right-to-left.
* **Les traducteurs, relecteurs et responsables de la localisation** localisent : ils traduisent, veillent à la cohérence terminologique, adaptent le ton et les exemples, et vérifient chaque langue directement dans le produit en conditions réelles.
* **Les équipes produit et juridiques** déterminent ce qui varie d’un marché à l’autre, comme les devises, les moyens de paiement et les mentions obligatoires.

## En bref

|               | Internationalisation (i18n)                                                                                               | Localisation (l10n)                                                           |
| ------------- | ------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
| Ce qui change | Le code et la conception                                                                                                  | Le contenu et les conventions propres à un paramètre régional                 |
| Quand         | À mettre en place avant d&#39;ajouter une deuxième langue, puis à maintenir au fil de l&#39;évolution des fonctionnalités | Pour chaque paramètre régional, et à nouveau à chaque modification du contenu |
| Qui           | Développeurs                                                                                                              | Traducteurs, relecteurs, responsables de la localisation                      |
| Résultat      | Une base de code unique qui prend en charge vos paramètres régionaux cibles                                               | Un produit adapté et relu pour un paramètre régional donné                    |
| Exemple       | Remplacer `$${total}` par `Intl.NumberFormat`                                                                             | Traduire le parcours de paiement en allemand, en vouvoyant l&#39;utilisateur  |

## Erreurs courantes

* **Confondre localisation et traduction.** Une page traduite qui conserve des dates au format américain, des prix en dollars et des expressions idiomatiques intransposables paraît toujours étrangère. Selon le W3C, la localisation est « souvent un problème nettement plus complexe » que la traduction de l&#39;interface et de la documentation.
* **Intégrer l&#39;i18n trop tard.** Les chaînes codées en dur, les phrases concaténées et les boutons à largeur fixe compliquent la localisation d&#39;une base de code volumineuse. Des libellés traduits peuvent déborder de la mise en page même lorsque leur sens est correct. La [pseudo-localisation](/kb/pseudo-localization) révèle bon nombre de ces problèmes avant même le début de la traduction.
* **Coder soi-même la logique de pluralisation.** `count === 1 ? 'item' : 'items'` fonctionne pour l&#39;anglais, qui possède 2 formes plurielles, mais l&#39;arabe en compte 6. (Voir [Comment gérer les formes plurielles dans React ?](/kb/how-to-handle-plurals-in-react))
* **Traduire sans contexte.** Un traducteur ou un modèle qui voit « Save » isolément ne peut pas savoir s&#39;il s&#39;agit d&#39;enregistrer sur le disque ou d&#39;économiser de l&#39;argent.

Avant le lancement, consultez la [checklist de lancement d&#39;une application multilingue](/kb/multilingual-app-launch-checklist) pour savoir ce qu&#39;il faut tester dans chaque paramètre régional.

## Comment General Translation répartit l&#39;i18n et la l10n

Pour l&#39;internationalisation, les bibliothèques open source de General Translation, comme `gt-next`, `gt-react`, `gt-vue` et `gt-node`, prennent en charge la partie code. Le composant [`<T>`](/docs/react/reference/components/t) encapsule le JSX directement là où il est écrit : nul besoin d&#39;un fichier de clés vers lequel extraire les chaînes. Quant à [`<DateTime>`](/docs/react/reference/components/datetime), [`<Currency>`](/docs/react/reference/components/currency) et [`<Plural>`](/docs/react/reference/components/plural), ils formatent les valeurs selon chaque paramètre régional :

```jsx title="OrderSummary.jsx"
import { T, DateTime, Currency } from 'gt-next';

export function OrderSummary({ date, total, currency }) {
  return (
    <T>
      Order placed on <DateTime>{date}</DateTime>. Total:{' '}
      <Currency currency={currency}>{total}</Currency>
    </T>
  );
}
```

Pour la localisation, ajoutez un paramètre régional dans `gt.config.json`, puis exécutez [`npx gt translate`](/docs/cli/reference/commands/translate) pour générer les traductions correspondantes. La plateforme de traduction s’appuie sur le composant, les variables et les notes de développeur comme contexte, les [groupes de contexte](/docs/platform/dashboard/guides/defining-context-for-translations) permettent de partager la terminologie et les règles de style entre projets, et votre équipe [relit les traductions](/docs/platform/dashboard/guides/reviewing-translations) dans le tableau de bord. Pour vérifier un site public, le [Report Card](https://generaltranslation.com/report-card) gratuit évalue la qualité de sa localisation, notamment les balises `hreflang`, les déclarations de langue, le routage selon les paramètres régionaux, les métadonnées traduites et le sens du texte.

## Points clés

* L&#39;internationalisation (i18n) met en place une prise en charge commune de plusieurs paramètres régionaux. Cette prise en charge doit être maintenue au fil de l&#39;évolution des fonctionnalités ; elle ne produit pas de traductions.
* La localisation (l10n) adapte le produit à chaque paramètre régional : la traduction, mais aussi la devise, les formats de date et de nombre, les unités, le ton ainsi que les aspects juridiques et culturels.
* Dans i18n, l10n et g11n, le nombre indique combien de lettres séparent la première de la dernière ; le sens de g11n varie selon les sources.

## Related questions

- [Liste de contrôle des tests de localisation pour les applications multilingues](https://generaltranslation.com/fr/kb/multilingual-app-launch-checklist.mdx): Testez neuf points dans chaque paramètre régional pris en charge sur une compilation de Production : les parcours complets, y compris les états d’erreur et les e-mails, le changement de langue, les formes plurielles, la devise et les fuseaux horaires, le foisonnement du texte, la mise en page right-to-left, l’accessibilité, la distribution des traductions et des URL de langue explorables. Associez à chaque vérification un critère de réussite explicite.
- [Faut-il développer votre propre i18n ou utiliser General Translation ?](https://generaltranslation.com/fr/kb/general-translation-vs-in-house-i18n.mdx): Une i18n faite maison (un dictionnaire par langue et un petit utilitaire t()) suffit pour une ou deux langues et un peu de texte. À mesure que l’application grandit, vous finissez par réécrire les règles de pluriel, les solutions de repli et la synchronisation des fichiers, et il vous reste à produire les traductions. Les bibliothèques open source de General Translation gèrent l’affichage, et General Translation génère et met à jour les traductions à partir de votre code.
- [Qu’est-ce que la pseudo-localisation ?](https://generaltranslation.com/fr/kb/pseudo-localization.mdx): La pseudo-localisation est un test qui remplace votre texte source par une version modifiée, accentuée, allongée d’environ 40 % et encadrée de crochets, afin de faire apparaître les chaînes codées en dur, les troncatures, les polices défaillantes et les phrases concaténées avant même qu’une traduction n’existe. Android propose à cet effet les pseudo-paramètres régionaux en-XA et ar-XB.
- [Qu’est-ce qu’un système de gestion de la traduction (TMS) ?](https://generaltranslation.com/fr/kb/what-is-a-translation-management-system.mdx): Un système de gestion de la traduction (TMS) est un logiciel qui stocke votre contenu source et ses traductions, et qui pilote le workflow de traduction : mémoire de traduction, glossaires, relecture, traduction automatique et intégrations. Sa mémoire de traduction réutilise les traductions existantes par correspondance exacte ou approximative (fuzzy match). Crowdin, Lokalise, Phrase, Smartling et Transifex en sont des exemples courants.
- [General Translation vs i18next, react-intl et next-intl : quelle bibliothèque d’i18n choisir ?](https://generaltranslation.com/fr/kb/general-translation-vs-i18n-libraries.mdx): Les bibliothèques open source comme i18next, react-intl et next-intl ne traduisent rien. Elles affichent les traductions que vous leur fournissez dans un fichier de catalogue par langue, rédigées par vous, vos traducteurs ou un service tiers. Les bibliothèques de General Translation sont elles aussi open source et remplissent le même rôle, mais General Translation se charge en plus de la traduction, en s’appuyant sur votre code comme contexte.

## Previous and next questions

- Previous question: [Comment trouver les chaînes codées en dur qui ne sont pas traduites ?](https://generaltranslation.com/fr/kb/find-hardcoded-strings.mdx)
- Next question: [La traduction par IA est-elle assez précise pour une application en production ?](https://generaltranslation.com/fr/kb/is-ai-translation-accurate.mdx)

## Sitemap

See the [Knowledge Base sitemap](https://generaltranslation.com/fr/kb/sitemap.md) for every article.
