18 sept. 2025·8 min de lecture

Flux de localisation pour interfaces web et natives qui tient la route

Un flux de localisation pratique : organisez les clés de traduction, définissez des responsabilités, gérez les pluriels et faites de la QA pour que les UI web et natives ne cassent jamais.

Flux de localisation pour interfaces web et natives qui tient la route

Ce qui tourne mal quand la localisation n’est pas gérée

La localisation non gérée commence souvent par de petits problèmes agaçants, puis finit par coûter cher. Un libellé qui tenait hier déborde aujourd’hui. Une clé manquante s’affiche sous la forme d’un identifiant brut. Un pluriel qui sonnait bien en anglais devient faux, voire maladroit, dans une autre langue.

La plupart des équipes finissent par corriger les mêmes soucis sous pression :

  • Boutons tronqués, titres coupés ou texte chevauchant des icônes
  • Clés manquantes qui retombent en anglais ou affichent le nom de la clé
  • Mauvaises formes plurielles (par exemple « 1 items ») et grammaire cassée dans les langues genrées
  • Formulation incohérente pour un même concept sur plusieurs écrans
  • Correctifs de dernière minute parce qu’un écran a été livré sans traductions

Les écrans web et natifs échouent souvent de façons différentes. Sur le web, des layouts flexibles peuvent masquer les problèmes jusqu’à ce qu’un viewport ou un navigateur spécifique les expose. Le texte peut revenir à la ligne de façon inattendue, repousser des boutons ou casser une grille. Sur les applications natives, l’espacement est plus strict : une traduction longue peut chasser des éléments hors écran, entrer en conflit avec des tailles de police d’accessibilité ou être coupée parce qu’un composant ne redimensionne pas automatiquement.

Un bon flux de localisation prévient la plupart de ces cas en stabilisant les clés, en rendant les traductions révisables et en intégrant des vérifications UI de routine. Il vous aide à publier des mises à jour avec moins de surprises. Ce qu’il ne corrige pas, c’est un texte source ambigu : si la copie originale est vague (comme « Open » ou « Apply » sans contexte), la traduction reste une hypothèse.

Une définition simple du succès n’est pas « tout est traduit », mais :

  • L’UI reste lisible sur web et natif
  • Les mises à jour sont rapides parce que les clés ne changent pas sans cesse
  • La QA détecte les problèmes avant les utilisateurs

Exemple : si un écran de panier affiche « {count} item(s) », des chaînes non gérées mènent à des pluriels maladroits et à des problèmes d’espacement. Une approche gérée impose des règles de pluriels correctes et permet de repérer un bouton qui s’allonge de 30 % en allemand avant la sortie.

Décidez de la propriété et d’une seule source de vérité

Un flux de localisation se casse le plus vite quand personne ne peut répondre à la question : « Quel texte est le vrai ? » Choisissez une seule source de vérité pour les chaînes et rendez-la outrageusement claire. Cette source peut être un fichier dans le repo, une plateforme de traduction ou un tableau interne, mais il faut un endroit unique qui tranche à chaque conflit.

Définissez les rôles par décision, pas par titre. Quelqu’un doit approuver le sens et le ton (souvent Produit ou Marketing). Quelqu’un doit garder les clés stables et utilisables en code (souvent l’Engineering). Quelqu’un doit protéger les contraintes UI (souvent le Design), surtout quand web et natif se comportent différemment.

Une séparation qui évite la plupart des conflits :

  • Créateur de clé : la personne qui livre l’écran ajoute de nouvelles clés quand l’UI a besoin de texte.
  • Validateur du libellé : un PM ou propriétaire du copy approuve le texte source.
  • Éditeur de traduction : les traducteurs modifient les traductions, mais ne renomment pas les clés.
  • Modifications de clés : seul le propriétaire de la clé peut déprécier ou fusionner des clés, avec une note expliquant pourquoi.

Fixez des attentes de délai de réponse pour ne pas bloquer les releases. Par exemple : accusé de réception des nouvelles clés sous 1 jour ouvré, approbation du texte source sous 2 jours, et corrections critiques (UI cassée, texte légal erroné) sous quelques heures.

Exemple concret : votre équipe construit un nouveau flux « Reset password » avec écrans web et natifs. Le développeur ajoute les clés, le PM approuve le texte anglais final, et les traducteurs remplissent les autres langues. Si un traducteur constate que « Reset » devrait être « Change », il met à jour les traductions mais la clé reste la même. Si le PM veut réutiliser le texte sur plusieurs écrans, seul le propriétaire de la clé fait ce changement structurel pour éviter des cassures silencieuses.

Stratégie des clés : réutilisation, stabilité et limites d’écran

Une bonne stratégie de localisation commence par une règle : les clés sont des identifiants, pas des phrases en anglais. Traitez-les comme des numéros de pièce. Si vous changez le libellé plus tard, la clé doit généralement rester la même.

Créez une nouvelle clé quand le sens est différent. Réutilisez une clé quand le sens est identique, même si l’écran diffère. « Save » sur un écran profil et « Save » dans les paramètres peuvent partager une clé si les deux signifient « enregistrer les modifications ». Mais « Save » au sens de « mettre en favori » doit être une clé différente, car les traducteurs auront peut‑être besoin d’un verbe différent.

Séparez les labels d’interface courts des contenus plus longs. Un label de bouton, un hint d’aide et un message d’erreur se traduisent souvent différemment et ont des limites de longueur distinctes. Les garder comme clés séparées facilite l’ajustement du ton et de la ponctuation sans casser d’autres écrans.

Limites d’écran sans forcer des formulations identiques

Visez la réutilisation entre web et natif, mais ne l’imposez pas quand les plateformes nécessitent un langage différent. Une demande d’autorisation native demande souvent un texte plus clair et plus formel qu’un tooltip web. Dans ce cas, conservez le même concept mais utilisez des clés spécifiques à la plateforme pour que chaque UI lise naturellement.

Un pattern pratique consiste à grouper les clés par feature et type d’UI, puis à réutiliser dans ces limites :

  • Réutilisez au sein de la même feature quand le sens est identique
  • Séparez par type d’UI (label vs help vs error vs system prompt)
  • Utilisez des variantes par plateforme seulement si la formulation doit diverger
  • Gardez les clés stables et ne changez que le texte affiché
  • Ajoutez des notes de contexte (où ça apparaît, limites de caractères)

Par exemple, la même action « Delete customer » peut exister dans un panneau admin web et une app terrain native. Vous pouvez réutiliser le libellé d’action principal, mais garder une clé séparée pour le texte de confirmation natif s’il requiert des avertissements plus forts ou des lignes plus courtes.

Nommage et organisation des clés de traduction

Un bon système de nommage rend la localisation ennuyeuse dans le bon sens : on trouve vite les chaînes, les traducteurs ont du contexte, et les clés restent stables même si la copie change.

Utilisez une convention lisible qui répond à quatre questions : où c’est, de quoi il s’agit, à quoi ça sert, et est‑ce une variante. Un modèle simple qui marche sur web et natif :

<product_or_domain>.<screen_or_flow>.<component>.<purpose>[.<variant>]

Par exemple, dans un portail client : portal.login.button.submit ou portal.orders.empty_state.title. Cela regroupe les clés par écran ou flow tout en étant facilement trouvable par composant.

Les mauvaises clés sont soit trop vagues soit trop liées au texte anglais présent :

  • Bon : portal.profile.field.email.label
  • Mauvais : emailText (pas de scope, pas d’intention)
  • Mauvais : please_enter_your_email (casse si la copie change)
  • Bon : portal.checkout.error.payment_failed
  • Mauvais : error_12

Les variantes doivent être explicites, pas bricolées avec de la ponctuation ou un mix de casse. Si vous avez besoin d’un libellé plus court pour un header mobile, ajoutez un suffixe de variante : ...title.short vs ...title.long. Pour des différences de casse, préférez des clés séparées comme ...button.save et ...button.save_titlecase uniquement si la plateforme ne peut pas transformer le texte en toute sécurité.

Les placeholders ont aussi besoin de règles pour que les traducteurs n’improvisent pas :

  • Utilisez des placeholders nommés : {user_name}, {count}, {date}
  • Ne concaténez jamais : ne construisez pas des chaînes comme "Hello " + name
  • Gardez les unités dans la chaîne quand elles dépendent de la langue : {count} items plutôt que {count} + " items"
  • Définissez les formats autorisés : dates ISO, monnaie, ou formatage spécifique à la plateforme
  • Ajoutez une courte note pour les chaînes délicates (par exemple si {count} peut valoir zéro)

Pluriels et règles grammaticales qui évitent de retravailler

Run a quick localization pilot
Construisez un petit écran pilote de bout en bout et affinez votre processus de localisation au fil de l’eau.
Get Started

La gestion des pluriels est souvent le premier point de rupture. Beaucoup d’équipes supposent que chaque langue a seulement « un » et « plusieurs », puis découvrent que l’UI sonne faux ou nécessite des corrections de dernière minute.

Les langues peuvent avoir plusieurs catégories de pluriel. L’anglais utilise surtout one et other, mais le russe, le polonais, l’arabe ou le tchèque peuvent avoir few, many ou zero. Si vous imposez tôt un modèle simple, vous devrez réécrire les chaînes ensuite sur web et natif.

Choisissez une norme unique pour les chaînes plurielles et appliquez‑la partout (web, iOS, Android, rendu côté backend). Une approche pratique est de stocker une seule clé avec les formes plurielles au lieu de clés séparées par forme. Basez l’ensemble des formes sur les catégories CLDR pour correspondre aux règles réelles de chaque langue.

Une règle qui évite le retravail : ne construisez jamais des phrases UI à partir de morceaux comme "You have " + count + " messages". L’ordre des mots peut changer, et certaines langues exigent des terminaisons ou des cas différents selon le nombre.

Un pattern pratique de clé

Pour un compteur de messages, définissez une clé stable et incluez le nombre comme paramètre. Fournissez ensuite les formes nécessaires pour chaque langue.

  • Une clé par concept (ex. inbox.message_count)
  • Supportez les formes CLDR (zero, one, two, few, many, other)
  • Utilisez toujours des placeholders (ex. {count}) à l’intérieur de la phrase complète
  • Ajoutez une note pour le traducteur si le sens est ambigu (est‑ce « messages » ou « messages non lus » ?)

Genre et cas grammaticaux

Parfois, les règles de pluriel ne suffisent pas. Si votre UI s’adresse à une personne ("Welcome, Alex") ou parle de rôles ("assigned to him/her"), certaines langues exigent des mots différents selon le genre. D’autres langues changent les terminaisons selon le cas grammatical (par exemple après certaines prépositions).

Dans ces cas, créez des chaînes séparées pour des différences grammaticales réelles, pas seulement stylistiques. L’objectif est d’avoir moins de clés, mais aussi moins de surprises en QA quand une traduction « correcte » reste mal placée dans le contexte.

Contraintes de formatage et de mise en page entre plateformes

Une traduction peut être correcte et casser quand même l’UI. Le rendu du texte diffère entre web et natif, donc votre workflow doit inclure des règles de formatage et des vérifications de layout, pas seulement des chaînes traduites.

Standardisez l’affichage des nombres, monnaies et dates. Évitez de construire ces éléments par concaténation comme "$" + amount ou de figer un format de date dans un libellé. Utilisez le formatage adapté à la locale pour que séparateurs et ordre correspondent aux attentes (1,000.50 vs 1 000,50 ; jour‑mois‑année vs mois‑jour‑année). Les fuseaux horaires sont un piège fréquent : stockez les timestamps en UTC, formatez‑les dans le fuseau local de l’utilisateur et précisez quand une heure se rapporte à un fuseau particulier.

La direction du texte est un autre casse‑tête silencieux. Si vous supportez les langues RTL, prévoyez des layouts miroir et de la ponctuation qui « se déplacent ». Les icônes directionnelles (flèches, boutons retour, étapes) doivent souvent être inversées. Faites au moins une vérification RTL pendant la revue, même si vous ne supportez pas encore entièrement le RTL.

Sur mobile, les polices et l’espacement peuvent bouger plus que sur le web. Une chaîne qui tient sur le web peut se réordonner maladroitement dans SwiftUI ou Kotlin. Décidez d’une taille de police minimale sûre, autorisez le wrapping quand c’est pertinent et définissez des polices de secours pour les scripts que votre police par défaut ne couvre pas.

L’accessibilité demande aussi des vérifications localisées. Les lecteurs d’écran lisent parfois nombres, abréviations et textes mixtes d’une manière surprenante.

Garde‑fous de layout qui préviennent la plupart des problèmes :

  • Concevez pour l’expansion du texte (30–50 %) et évitez les boutons à largeur fixe.
  • Gardez les valeurs dynamiques (comptes, prix, dates) comme tokens formatés séparément.
  • Utilisez les formateurs natifs de la plateforme pour les dates et nombres, pas des patterns maison.
  • Testez une locale RTL et une locale « texte long » avant la sortie.
  • Exécutez des vérifications lecteur d’écran sur les flux principaux (login, checkout, settings).

Exemple : un libellé « Total : $1,234.50 » peut devoir devenir « 1 234,50 € » avec le symbole après la valeur, un espacement différent et une pause compréhensible pour le lecteur d’écran entre « Total » et le montant.

Workflow étape par étape, du nouvel écran à la sortie

Test localization early
Prototypez un flux localisé (login ou paiement) et identifiez où les longues chaînes posent problème.
Commencer

Un flux de localisation doit démarrer plus tôt que la plupart des équipes ne le pensent : dès la phase de design. Si vous attendez que l’UI soit « finie », vous vous retrouvez à presser les traductions, livrer du texte coupé ou codé en dur « pour l’instant ».

Commencez par ajouter une clé de traduction au fur et à mesure que vous concevez chaque label, bouton et message. Écrivez le texte par défaut dans la langue source et joignez un contexte rapide comme où il apparaît et ce que l’action fait. Une clé comme checkout.pay_button n’est utile que si les traducteurs savent si c’est un verbe (« Payer ») ou un nom (« Paiement »).

Implémentez l’UI en utilisant des placeholders et en gardant la langue par défaut comme fallback. Gardez les variables explicites (comme {name} ou {count}) et évitez d’assembler des phrases. C’est une des façons les plus rapides de casser la grammaire entre langues.

Lorsque vous envoyez des chaînes à traduire, fournissez ce dont les traducteurs ont besoin pour être précis : une capture d’écran par écran (ou une courte vidéo si le texte change), limites de caractères pour les espaces serrés (onglets, boutons, badges), notes sur le ton et la terminologie, et la liste des placeholders dynamiques avec leur signification.

Quand les traductions reviennent, intégrez‑les tôt et construisez les versions web et natives. Faites des vérifications UI rapides sur les écrans à haut risque : login, onboarding, checkout et settings. Recherchez texte coupé, éléments qui se chevauchent, clés manquantes et formes plurielles erronées.

Enfin, publiez et surveillez. Suivez les clés manquantes, les retours au texte par défaut et les écrans où le texte déborde fréquemment.

Donnez aux traducteurs ce dont ils ont besoin pour être précis

One workflow for every platform
Alignez votre backend, UI web et applications mobiles grâce à une approche partagée.
Try AppMaster

Des traductions précises commencent avant qu’un mot soit traduit. Si les traducteurs ne voient qu’une clé et une phrase anglaise, ils devinent. C’est ainsi que l’on obtient les bons mots au mauvais endroit et une UI qui sonne étrange ou impolie.

Un « pack de contexte » simple enlève la plupart des conjectures. Pour chaque chaîne, indiquez où elle apparaît (écran et composant), ce que l’utilisateur tente de faire et le ton (familier, formel, urgent). Précisez si c’est un label de bouton, un message d’erreur, un item de menu ou un texte d’aide. Ces catégories se traduisent différemment.

Quand l’espace est limité, dites‑le clairement. Les écrans web et natifs cassent différemment, donc définissez des limites quand elles comptent : labels courts, titres d’onglets, toasts et tout ce qui est dans une carte à taille fixe. Si une chaîne doit rester sur une seule ligne, signalez‑le. Si les retours à la ligne sont autorisés, dites où ils sont acceptables.

Marquez clairement les parties « ne pas traduire ». Noms de produit, noms d’abonnement, codes promo, champs API et placeholders comme {name} doivent rester intacts. Sinon, les traducteurs peuvent les localiser et votre app devient incohérente.

Un paquet pratique par chaîne :

  • Capture d’écran ou nom d’écran (par exemple : « Checkout - Payment method »)
  • Type et intention (bouton qui confirme le paiement)
  • Note de ton (calme, rassurant)
  • Contraintes (max 18 caractères, une seule ligne)
  • Tokens protégés (noms de produit, intégrations, {amount})

Traitez le texte légal et le contenu support comme des flux séparés. Le texte légal a souvent des exigences d’approbation et des mises à jour plus lentes ; versionnez‑le soigneusement. Les articles d’aide demandent des traductions plus longues et peuvent vivre dans un système différent.

Exemple : un bouton « Continue » sur mobile peut nécessiter une limite stricte par rapport au web. Si les traducteurs le savent, ils choisiront un verbe plus court dans les langues qui s’étendent au lieu d’imposer une refonte UI tardive.

Boucle QA et revue qui évite les UI cassées

Les cassures UI liées à la localisation ne ressemblent rarement à un « bug » au départ. Elles prennent la forme d’un libellé manquant, d’un bouton qui passe sur deux lignes ou d’un placeholder montrant la mauvaise valeur. Un bon workflow inclut des étapes QA qui mettent ces problèmes en lumière avant les utilisateurs.

Commencez par la pseudo‑localisation dans les builds de développement. Remplacez les vraies chaînes par des versions plus longues et accentuées (comme "[!!! Šéttïñĝš !!!]") et gonflez la longueur de 30–50 %. Cela expose rapidement la troncature, le chevauchement et les chaînes codées en dur sur web et natif.

Ajoutez des vérifications automatisées à chaque build. Elles attrapent les erreurs ennuyeuses que les humains manquent quand ils relisent des centaines de lignes :

  • Clés manquantes dans une locale (les fallbacks cachent les problèmes)
  • Clés inutilisées (signe qu’on dérive et qu’on livre du texte mort)
  • Mismatches de placeholders ("Hello, {name}" vs "Hello, {username}")
  • Formes plurielles invalides pour une locale (zero, one, few, many)
  • Patterns interdits comme du HTML brut dans les chaînes mobiles

Ensuite, mettez en place une boucle de validation manuelle claire. Produit vérifie le sens et le ton des écrans clés, QA vérifie le layout et l’interaction.

Gardez la matrice de test petite mais stricte. Ne testez pas tout. Testez d’abord ce qui casse : login/signup, reset de mot de passe, checkout ou confirmation de paiement, édition du profil, notifications et états vides, et tout écran avec tableaux, badges ou petits boutons.

Quand vous signalez un problème, facilitez la correction avec des détails : locale, appareil et version OS (ou navigateur et largeur), texte attendu, texte réel et une capture montrant la zone coupée. Si le problème implique la pluralisation ou des placeholders, collez la clé exacte et la chaîne rendue.

Erreurs courantes et comment les éviter

Reduce last minute copy fixes
Utilisez des outils visuels pour construire la logique et l’UI tout en rendant les changements de texte faciles à gérer.
Try AppMaster

La plupart des bugs de localisation ne sont pas des « problèmes de traduction » mais des problèmes de workflow qui se manifestent par des UIs cassées, du texte manquant ou des messages confus.

Un piège fréquent est le renommage de clés lorsque l’on veut seulement changer le libellé. Les clés doivent rester des IDs stables, pas le texte lui‑même. Si vous changez checkout.button.pay en checkout.button.pay_now, toutes les anciennes traductions deviennent « manquantes » et vous perdez l’historique. Gardez la clé, mettez à jour la chaîne par défaut et ajoutez du contexte si le sens a changé.

Un autre problème fréquent est le texte codé en dur sur une plateforme. L’équipe web utilise des clés, mais l’équipe mobile insère du texte littéral pour un correctif rapide. Un mois plus tard, des utilisateurs voient des alertes en anglais sur iOS. Faites de « pas de chaînes user‑facing codées en dur » une règle partagée.

Les placeholders provoquent des erreurs subtiles quand on suppose l’ordre des mots. L’anglais fonctionne avec "{count} items", mais d’autres langues peuvent exiger un ordre différent ou des mots supplémentaires. Utilisez des placeholders nommés (pas positionnels) et standardisez‑les entre plateformes.

Erreurs à attraper tôt :

  • Traiter les clés comme du copy et casser les traductions existantes. Gardez les clés stables.
  • Réutiliser une clé pour deux sens différents. Séparez quand l’intention diffère.
  • Mélanger les styles de placeholders (certains nommés, d’autres numérotés). Standardisez.
  • Ne tester qu’en anglais. Vérifiez toujours au moins une locale « longue » et une locale compacte.
  • Publier sans plan de secours. Définissez le comportement quand une clé manque.

Tester une seule langue « longue » n’est pas suffisant. L’allemand étend souvent l’UI, tandis que le chinois peut révéler des problèmes d’espacement. Faites une passe rapide sur les deux, et testez aussi les cas limites de pluriel comme 0, 1 et 2.

Mettez d’accord le fallback avant la sortie. Par exemple : si le français manque, retombez sur l’anglais, loggez les clés manquantes et bloquez la release seulement si des écrans critiques présentent des lacunes.

Checklist rapide et étapes pratiques

Un flux de localisation reste sain quand les vérifications sont petites et répétables. L’objectif : moins de chaînes surprises, moins de layouts cassés, moins de rushs de traduction de dernière minute.

Avant de merger un changement UI, faites un contrôle rapide des problèmes « classiques » :

  • Les nouvelles clés respectent les règles de nommage et vivent dans le bon namespace (écran ou feature).
  • Les placeholders correspondent exactement entre les langues (mêmes variables, même sens).
  • Les formes plurielles sont complètes pour les langues supportées (pas seulement singulier/pluriel anglais).
  • Aucun texte codé en dur n’est laissé dans l’UI (y compris états d’erreur et états vides).
  • Le texte nouveau ou modifié a du contexte basique (capture d’écran ou note claire).

Avant de publier, faites une QA de release ciblée sur les lieux où la localisation casse en premier. Limitez le temps, mais soyez consistants : principaux flux utilisateur sur chaque plateforme, une vérification RTL, écrans « texte long » (paramètres, légal, onboarding, tableaux, boutons étroits), et formatage date/numérique/monnaie dans quelques locales.

Adoptez un rythme qui colle à votre équipe. Beaucoup d’équipes mettent à jour les traductions chaque semaine, puis gelent les chaînes 1–2 jours avant une release. L’idée est d’éviter de mixer des modifications de copy de dernière minute avec la QA finale.

Étapes qui rapportent vite : écrivez vos conventions (nommage des clés, placeholders, règles de pluriel, ownership), puis exécutez un écran pilote de bout en bout et ajustez selon ce qui casse.

Si vous construisez du backend, UI web et mobile natif sur une même plateforme comme AppMaster, il est plus simple de garder clés et placeholders cohérents parce que les mêmes écrans et logiques peuvent partager une convention. C’est la stabilité de cette convention qui rend la localisation routinière plutôt que fragile.

FAQ

What’s the simplest way to stop localization from breaking my UI?

Commencez par un seul emplacement stable où résident les chaînes, une convention de nommage claire pour les clés, et une règle : on ne change pas une clé parce que l’anglais change. Ajoutez ensuite une petite routine QA qui détecte les clés manquantes, les débordements et les problèmes de pluriel avant la mise en production.

What does “single source of truth” mean for translations?

Choisissez un système unique qui fait foi en cas de conflit — par exemple des fichiers de traduction dans le repo ou une exportation depuis une plateforme de traduction. Précisez que tout le monde modifie le contenu via cette source unique et que le code ne fait que la consommer.

Who should own keys, wording, and translations?

Décidez par responsabilité plutôt que par titre : une personne approuve le sens et le ton dans la langue de base, une autre gère la structure et la dépréciation des clés, et les traducteurs ne modifient que les valeurs de traduction. Cela évite les renommages silencieux et les changements de dernière minute qui cassent les builds.

When should I reuse a translation key vs create a new one?

Créez une nouvelle clé quand le sens change, même si l’anglais ressemble. Réutilisez une clé quand le sens est strictement identique entre écrans ; cela garde les traductions cohérentes et réduit la maintenance.

How should I name and organize translation keys so they stay stable?

Utilisez les clés comme identifiants, pas comme phrases anglaises. Incluez le périmètre (feature), l’écran/flow, le composant et l’intention. Par exemple portal.checkout.button.pay reste valable même si le libellé change ensuite.

What’s the right way to handle plurals across languages?

La plupart des langues ont plus que « singulier » et « pluriel ». Stockez une clé par concept avec les catégories de pluriel appropriées (CLDR) et gardez {count} à l’intérieur de la phrase complète pour que les traducteurs puissent réordonner les mots si besoin.

How do I avoid placeholder bugs like wrong names or broken grammar?

N’assemblez pas des phrases en concaténant des morceaux comme "Hello " + name. L’ordre des mots et les terminaisons changent selon la langue. Utilisez des placeholders nommés (par exemple {user_name}) de façon cohérente et documentez ce que représente chaque token.

How do I prevent truncated buttons and overlapping text on web and mobile?

Préparez-vous à une expansion du texte (30–50%) et concevez des composants qui peuvent s’adapter. Testez au moins un « locale long » et les tailles de police d’accessibilité sur web et natif pour attraper les coupures et chevauchements tôt.

What QA steps catch localization issues before users do?

Pseudo‑localisez dans les builds de dev pour exposer les chaînes codées en dur et les échecs de layout, puis ajoutez des vérifications automatiques pour les clés manquantes, les clés inutilisées, les placeholders incohérents et les formes plurielles invalides. Concentrez la revue manuelle sur les flux qui cassent en premier (login, checkout, paramètres).

What should we do when a translation key is missing right before release?

Retomber sur la langue de base tout en enregistrant les clés manquantes pour corriger rapidement sans bloquer chaque release. Pour les écrans critiques ou le texte légal, il est plus sûr de bloquer la release si les traductions manquent ou sont obsolètes.

Facile à démarrer
Créer quelque chose d'incroyable

Expérimentez avec AppMaster avec un plan gratuit.
Lorsque vous serez prêt, vous pourrez choisir l'abonnement approprié.

Démarrer