Localisation et internationalisation, quelle est la différence?

208

J'allais poser une question sur la préparation d'une application de bureau pour prendre en charge plusieurs langues sur l'interface utilisateur.

Dans ma recherche de questions existantes sur le sujet, je pensais au mot «International», j'ai donc sélectionné la balise Internationalisation et lu quelques questions correspondantes.

Finalement, j'ai réalisé que je devrais probablement regarder sous les questions marquées Localisation à la place. Cependant, il semble que je ne sois pas le seul à confondre ces deux termes.

Alors, quelles sont les principales différences entre la localisation et l'internationalisation?

De plus, une distinction claire entre eux est-elle vraiment si importante?

Cendre
la source

Réponses:

232
Internationalisation (i18n)
le processus de modification de votre logiciel afin qu'il ne soit pas câblé à une langue / locale / culture.
Localisation (l10n)
le processus d'ajout des ressources appropriées à votre logiciel afin qu'une langue / locale particulière soit prise en charge. Sa portée est plus grande que celle de cette entrée Wikipedia , mais c'est un bon début.


La valeur de les distinguer est que (théoriquement) une fois que votre programme passe par le processus i18n, vous pouvez ensuite itérer de nombreux processus l10n selon vos besoins; aussi, c'est agréable d'être précis avec la langue.

Hank Gay
la source
9
D'autres raisons de les considérer séparément: QA internationalisation et QA de localisation ont des cas de test différents, l'internationalisation est un coût unique (plus ou moins), et donc plus vous localisez de langues, plus votre retour sur investissement est élevé. i18n est généralement plus coûteux que l10n pour n'importe quel environnement local.
Mike Sickler
@Hank, @Mike, réponses très utiles, merci. J'ai donc eu raison de regarder d'abord l'internationalisation. Mon objectif est de m'assurer que la conception de l'application supportera au moins plusieurs langues à l'avenir, même si je me concentre uniquement sur l'anglais.
Ash
Bien qu'elle soit légèrement ancienne, cette vue de haut niveau du W3C est en gros d'accord avec cela.
mkobit
1
Généralement, l'internationalisation (i18n) est effectuée par le développeur / ingénieur logiciel une fois, tandis que la localisation (l10n) est effectuée par le spécialiste de la langue / culture respectif pour chaque marché.
Chetan
70

Selon Apple :

L'internationalisation est le processus de conception et de construction d'une application pour faciliter la localisation. La localisation , à son tour, est l'adaptation culturelle et linguistique d'une application internationalisée à deux ou plusieurs marchés culturellement distincts.

mouviciel
la source
32

L'internationalisation prépare votre demande de localisation. Par exemple, vous pouvez encoder des caractères stockés dans votre base de données en Unicode ( utf8mb4au lieu de latin1), déplacer des chaînes vers des fichiers de ressources, autoriser l'utilisation des formats de date, d'heure et de devise, etc.

Lorsque vous souhaitez vendre, par exemple, une version chinoise de votre application, vous devez alors la localiser en embauchant un traducteur pour créer les fichiers de ressources zh-CN et utiliser un nouveau format de date / heure / devise.

Mark Brackett
la source
13

L10n peut parfois montrer où votre i18n a échoué - par exemple, lorsque vos dictionnaires ont une seule entrée pour un mot utilisé comme nom et un verbe en anglais qui ne se traduit pas par le même mot dans une autre langue, ou des éléments d'interface utilisateur / le design ne convient pas à une culture (orientation L / R).

Ainsi, l10n se produit «généralement» après i18n, mais peut être réinjecté dans votre i18n et nécessiter une nouvelle conception, vous ne pouvez donc pas considérer votre application comme entièrement internationalisée avant d'avoir effectué quelques localisations.

Cade Roux
la source
11

Selon Wikipedia

L'internationalisation est le processus de conception d'une application logicielle afin qu'elle puisse potentiellement être adaptée à différentes langues et régions without engineering changes.

La localisation est le processus adapting internationalized softwarepour une région ou une langue spécifique en ajoutant des composants spécifiques aux paramètres régionaux et en traduisant le texte.

De plus , la localisation (qui est potentiellement effectuée plusieurs fois, pour différents paramètres régionaux) utilise le infrastructure or flexibility provided by internationalization(qui est idéalement effectuée une seule fois, ou en tant que partie intégrante du développement continu).

Asik
la source
8

Mondialisation (G11n): processus de développement et de commercialisation de produits logiciels multilingues sur un marché mondial.

Le développement de logiciels multilingues passe actuellement par deux phases: la première phase est l'internationalisation et la deuxième phase est la localisation.

Internationalisation (I18n): processus de généralisation d'un produit afin qu'il puisse gérer plusieurs langues et conventions culturelles sans avoir besoin d'être repensé (c'est-à-dire neutre en termes de langue et de culture).

Localisation (L10n): processus consistant à prendre un produit et à le rendre linguistiquement et culturellement approprié au lieu cible (pays / région et langue) où il sera utilisé et vendu (c'est-à-dire spécifique à la langue et à la culture).


la source
8

Beaucoup de réponses, beaucoup d'informations correctes, mais ma réponse est un peu un autre point de vue.

Internationalisation - c'est lorsque le développeur n'a pas dans le code de messages directs / messages d'erreur / noms de boutons / légendes d'étiquettes / etc. dans une certaine langue mais a une clé qui est passée à la fonction de traduction, et la fonction de traduction selon les paramètres régionaux de l'utilisateur actuel renverra le texte final en anglais / france / etc ...
La fonction de traduction fonctionne avec le stockage (db / files / tableau associatif / etc).
Le stockage contient des clés qui sont utilisées dans coode et des valeurs, qui sont des textes dans une certaine langue prise en charge par l'application.

Localisation - c'est un processus d'ajout de nouvelles valeurs dans une nouvelle langue (par exemple l'espagne) appropriée aux clés dans le stockage sans impliquer le développeur dans ce processus.

Par exemple, nous avons du stockage:

key   | english    | italian           |
------+------------+-------------------+
title | Welcome    | Benvenuto         |
agree | I agree    | Sono d'accordo    |
thank | Thank you  | Grazie            |

Internationalisation, il utilise dans le code quelque chose comme confirm(t(agree));au lieu de confirm("I agree");ou confirm("Sono d'accordo");
Localisation - c'est ajouter de nouveaux paramètres régionaux à notre stockage, comme:

key   | english    | italian           | spanish          |
------+------------+-------------------+------------------+
title | Welcome    | Benvenuto         | Bienvenido       |
agree | I agree    | Sono d'accordo    | Estoy de acuerdo |
thank | Thank you  | Grazie            | Gracias          |

et ici le développeur n'a pas besoin de code de mise à jour, la fonction de traduction portera correctement les textes appropriés.

V. Kovpak
la source
3
Très facile à comprendre.
Vinh Nguyen
1
Grands exemples!
Jinjinov
6

C'est très simple si vous suivez les définitions ci-dessous,

i18n (internationalisation) est le

processus de conception d'une application pour qu'elle ait la fonctionnalité de passer à une autre langue sans recourir à un changement programmatique de l'application.

l10n (localisation) est le

Le processus de création des textes spécifiques de langue réelle et le formatage .

Prateek Joshi
la source
3

Il y a quelques très bonnes réponses ici, donc je ne les recyclerai pas. Cependant, à un certain moment, généralement entre les tests d'internationalisation et les tests linguistiques de localisation, l'internationalisation et la localisation ont tendance à se chevaucher. Une personne mentionne que l10n renvoie à l'internationalisation, mais si vous effectuez des tests i18n de qualité et créez un contenu pseudo-localisé, alors itérer sur les problèmes de développement pendant la localisation devrait être l'exception, pas la règle. Le redimensionnement des interfaces, et en particulier l'adaptation des pages pour prendre en charge les langues bidirectionnelles comme l'arabe et l'hébreu ont également tendance à mélanger à la fois les problèmes de localisation et l'ingénierie d'internationalisation.

Il suffit de dire que l'internationalisation implique d'apporter des modifications à la source pour prendre en charge tous les paramètres régionaux en fonction des besoins. Si l'internationalisation se fait bien ...

... La localisation implique l'adaptation du contenu et de certains niveaux de présentation (par exemple une balise en gras) afin qu'il réponde au mieux aux besoins de marchés spécifiques ciblés (locales).

Beaucoup d'articles et de livres blancs pour référence ici: http://www.lingoport.com/software-internationalization-articles

Adam
la source
3

Internationalisation - i18n - L'abstraction d'une application de n'importe quelle langue / culture particulière.

Localisation - l10n - Brancher le support concret d'une langue / culture / locale particulière au framework i18n ci-dessus.

Fondamentalement, en faisant d'abord i18n, vous faites beaucoup moins de l10n d'un PITA.

En revanche, si vous créez d'abord une application dans un environnement local concret, puis essayez de l'internationaliser, ce sera un PITA massif. Ce n'est pas une simple question de simplement échanger une chaîne anglaise concrète en disant "Hello World" à Resource.Global.HelloWorld.

Différentes langues auront des exigences d'espace, une disposition, une emphase, des couleurs différentes, etc.

Vous avez besoin du cadre i18n en place dès le départ pour prendre en charge facilement ce basculement entre les paramètres régionaux pour les différences ci-dessus si vous pensez même que vous devrez peut-être prendre en charge plusieurs paramètres régionaux.

Le réinstaller ultérieurement dans l'application est vraiment très difficile. Vous devrez revisiter toute une série de considérations architecturales et de contraintes que vous (ou quelqu'un d'autre) avez faites la première fois.

rism
la source
2

Je pense que la localisation peut aller sans internationalisation mais .. l'internationalisation avec localisation ne devrait pas se faire ...


la source
2

pov analogique: Imaginez une étagère sur votre bibliothèque qui ne peut prendre qu'un seul livre 4x4 pouces. L'internationalisation consisterait à construire l'étagère avec toutes sortes de compartiments différents qui peuvent lui permettre de gérer n'importe quelle taille ou forme de livre. Et la localisation placerait tous les livres sur les bonnes sections. Considérez votre base de données, votre logique métier et votre interface utilisateur comme l'étagère et les différentes langues, devises et orientation du texte comme les livres.

Izz
la source
2

Comprend d' abord les paramètres régionaux

locale - un ensemble de paramètres qui définit la langue, la région et les préférences de variantes spéciales de l'utilisateur que l'utilisateur souhaite voir dans son interface utilisateur. Habituellement, un identificateur de paramètres régionaux se compose d'au moins un identifiant de langue et un identifiant de région.

i18n - Conception et développement de logiciels pour prendre en charge plusieurs paramètres régionaux.

l10n - Ceci n'est possible que lorsque votre logiciel prend en charge i18n. Mais l10n s'assure que la langue, le format de date, les formats de devise, etc. sont affichés dans le contexte pour un environnement local spécifique.

Par exemple,

#1. Le 3 juin 1977 sera traduit en espagnol sous le nom de 3 juin 1977.

# 2. Dans certains pays, les devises sont séparées par "." contre ','

# 3. Afficher le symbole monétaire respectif en fonction du pays de la région

# 1, # 2 et # 3 sont des cas d'utilisation pour la localisation.

Si le logiciel est conçu pour prendre en charge # 1 OU # 2 OU # 3 en fonction des paramètres régionaux de l'utilisateur, le produit est activé l10n.

S'il prend en charge plusieurs paramètres régionaux, son i18n est activé.

Faiz Mohamed Haneef
la source
1

Simplement,

L'internationalisation (I18N) est le processus qui permet à votre logiciel de s'adapter à différentes langues, régions et cultures.

La localisation (L10N) est le processus de traduction de votre logiciel en plusieurs langues. Mais avant de pouvoir localiser votre logiciel, vous l'internationalisez.

Sagar Thummar
la source
-1

Il existe de nombreuses définitions de i18n et l10n. Celui que j'utilise sont:

internationalisation (i18n) : adaptation linguistique de votre application (traduction)

localisation (l10n) : adaptation locale de votre application (monnaie, format numérique, format date ...).

Par exemple, nous pouvons avoir la même langue pour une application distribuée en France et en Suisse (nous parlons tous les deux français, au moins dans certaines parties de la Suisse), mais nous aurons encore besoin d'une adaptation pour changer EUR en CHF.

Guillaume
la source