Frankfurtské štúdio pre viacjazyčnú digitálnu prezentáciu +49 69 95209894 [email protected] Po–Pi 9–17 h Zákaznícka oblasť →
SlovenčinaSK

Praktická príručka

Sprievodca lokalizáciou aplikácií a softvéru (i18n)

Lokalizácia aplikácií a softvéru vyžaduje premyslené oddelenie kódu a textov. Táto príručka sa zaoberá technickými aspektmi, ako sú zástupné symboly, pravidlá množného čísla, dĺžka textov, kľúče reťazcov, kontext pre prekladateľov a podpora RTL. Pomáha vývojárom vytvárať medzinárodné aplikácie efektívne a konzistentne bez toho, aby sa dotýkala právnych alebo finančných tém.

i18n
Skratka pre internacionalizáciu
RTL
Podpora sprava doľava
ICU
Medzinárodné komponenty pre Unicode
Diagram oddelenia kódu a jazykových zdrojov

1. Oddelenie kódu a textov

Základným predpokladom pre každú lokalizáciu je striktné oddelenie programového kódu a textového obsahu. Všetky zobrazované texty by mali byť uložené v externých súboroch zdrojov (napr. Properties, JSON, YAML), nie pevne zakódované v zdrojovom kóde. Prekladatelia tak môžu pracovať bez úpravy kódu. Používajte jedinečné kľúče reťazcov ako referenciu v kóde, ktoré odkazujú na príslušné preklady. Toto oddelenie tiež uľahčuje údržbu a umožňuje neskoršie pridávanie nových jazykov bez zmeny kódu. Dbajte na to, aby aj popisy UI, chybové hlásenia a tooltips boli v týchto súboroch.

2. Zástupné znaky a premenné

Texty často obsahujú dynamický obsah ako čísla, mená alebo dáta. Tie musia byť vložené pomocou zástupných znakov, napr. s printf formátovaním (%s, %d) alebo modernejšími prístupmi ako zložené zátvorky {0}. Dôležité je, aby prekladatelia poznali poradie a význam zástupných znakov. Používajte pomenované zástupné znaky (napr. „{username}“) na poskytnutie kontextu. V jazykoch s odlišným slovosledom sa poradie zástupných znakov môže líšiť. Preto poskytnite možnosť upraviť poradie v preklade. Testujte všetky varianty, aby ste predišli chybným alebo neúplným výstupom.

Príklad zástupných znakov v preložiteľných reťazcoch

3. Pravidlá množného čísla a tvorenie plurálu

V nemčine existuje iba jednotné a množné číslo, no mnohé jazyky majú zložitejšie pravidlá množného čísla (napr. arabčina so šiestimi kategóriami). Používajte knižnice ako ICU MessageFormat, ktoré spracúvajú pravidlá množného čísla podľa jazyka. Vo svojich zdrojoch definujte samostatné kľúče pre rôzne tvary množného čísla (one, other). Kód potom automaticky vyberie správny tvar na základe čísla. Príklad: „{count} {count, plural, one {jablko} other {jablká}}“. Otestujte každý jazyk s viacerými číselnými hodnotami, aby ste sa uistili, že sa zobrazuje správny tvar množného čísla. Vyhnite sa pevným if-ovým podmienkam – sú náchylné na chyby.

4. Dĺžka textu a vyrovnávacia pamäť rozloženia

Preklady sú často dlhšie alebo kratšie ako pôvodný text. Najmä pri tlačidlách, ponukách a štítkoch to môže narušiť rozloženie. Naplánujte preto dostatok miesta na rozšírenie textu – dobrým odhadom je 30 % dodatočného priestoru pre západné jazyky, viac pre ázijské. Používajte dynamické rozloženia, ktoré sa prispôsobia dĺžke textu (napr. Auto Layout v iOS alebo Flexbox na webe). Vyhnite sa pevným šírkam. V prípade potreby umožnite UI prvkom zalomenie textu. Otestujte rozhranie s najdlhšími očakávanými prekladmi, aby ste predišli prekrývaniu alebo orezaniu.

5. Reťazcové kľúče, kontext pre prekladateľov a RTL

Jednoznačné reťazcové kľúče sú chrbtovou kosťou lokalizácie. Používajte výstižné názvy (napr. „login.button.title“) a zdokumentujte účel použitia. Poskytnite prekladateľom kontext: snímky obrazovky, maximálnu dĺžku znakov, obmedzenia (napr. „nie dlhšie ako 20 znakov“). Pre jazyky s pravým písmom (RTL), ako je arabčina alebo hebrejčina, musí byť UI zrkadlovo prevrátené. Používajte atribúty rozloženia, ktoré automaticky podporujú RTL (napr. start/end namiesto left/right). Otestujte celú navigáciu v podmienkach RTL. Myslite aj na ikony a grafiku – môžu byť v rôznych kultúrach interpretované odlišne.

Kontrolný zoznam pre vstup na trh

  • Používanie externých súborov prostriedkov pre texty
  • Zástupné symboly s pomenovanými premennými a prispôsobiteľným poradím
  • Implementácia pravidiel množného čísla pomocou ICU MessageFormat
  • Rozloženie s aspoň 30% rezervou na rozšírenie textu
  • Výstižné kľúče reťazcov s dokumentáciou kontextu
  • Podpora RTL pomocou atribútov rozloženia ako start/end
Mriežka rozloženia s rôznymi dĺžkami textu a vyrovnávacími pamäťami

Časté otázky

Prečo je oddelenie kódu a textov dôležité?

Umožňuje preklady bez zmeny kódu, zjednodušuje údržbu a umožňuje pridávanie nových jazykov bez nutnosti prekompilovať softvér.

Ako spracovať množné čísla v rôznych jazykoch?

Používajte knižnice ako ICU MessageFormat, ktoré pre každý jazyk vyberú správny tvar množného čísla. V zdrojoch definujte kľúče pre každú kategóriu množného čísla (napr. one, other).

Čo treba osobitne zohľadniť pri jazykoch s pravým smerom (RTL)?

UI musí byť zrkadlené: Používajte logické atribúty rozloženia (start/end) namiesto absolútnych smerov. Otestujte navigáciu a odsadenie textu v podmienkach RTL.

Ste pripravení na tento trh?

Lokalizujeme vašu webovú stránku jazykovo, technicky a kultúrne – s kontrolou rodeného hovorcu a pevnou cenou. Vyžiadajte si nezáväznú ponuku.

Požiadať o nezáväznú ponuku

Nemecká GmbHOkresný súd Frankfurt nad Mohanom · HRB 111727
D-U-N-S® registrované315030052
Spracovanie v súlade s GDPRHosting v Nemecku
Pevné ceny s písomnou zárukou dodania