Úvod

Lokalizace a podpora více jazyků patří mezi základní aplikační principy platformy NET Genium. Platforma je navržena tak, aby umožňovala vytvářet aplikace použitelné v různých jazykových a kulturních prostředích, aniž by bylo nutné měnit jejich architekturu nebo aplikační logiku.

Lokalizace aplikací

Lokalizace v prostředí NET Genium znamená přizpůsobení aplikace konkrétnímu jazykovému a regionálnímu prostředí. Typickými prvky lokalizace jsou:

  • jazyk uživatelského rozhraní,
  • formáty data a času,
  • formáty čísel a měn,
  • regionální zvyklosti a terminologie.

NET Genium odděluje lokalizační prvky od aplikační logiky. Díky tomu lze aplikaci lokalizovat bez zásahů do její funkčnosti a bez rizika narušení provozu.

Vícejazyčnost

Vícejazyčnost představuje schopnost aplikace fungovat současně ve více jazycích. V praxi to znamená, že:

  • různí uživatelé mohou pracovat se stejnou aplikací v různých jazycích,
  • jazyk je vázán na uživatelský účet nebo uživatelské nastavení,
  • změna jazyka neovlivňuje uložená data.

Jazyk uživatele ovlivňuje i formát čísel při zadávání hodnot a jazyk odesílaných e-mailů; skript se podle něj může větvit pomocí proměnné „#language#“ nebo serverové funkce „LANGUAGE“.

NET Genium umožňuje navrhovat aplikace tak, aby byly vícejazyčné od samého počátku, ale zároveň podporuje i postupné rozšiřování aplikací o další jazyky v průběhu jejich životního cyklu.

Zápis vícejazyčných textů

Texty uživatelského rozhraní samotného NET Genia jsou přeložené ve slovnících platformy. Texty aplikací – názvy, nápovědy, hodnoty výběrových seznamů, hlášení skriptů – se zapisují přímo do vlastností jednotlivých prvků, a to ve všech jazycích najednou:

  • Jednotlivé jazykové verze odděluje značka tvořená znakem „#“, dvoupísmenným kódem jazyka psaným malými písmeny a dvojtečkou, například „Obecné#en:General#de:Allgemein“.
  • Uživatel uvidí verzi svého jazyka. Chybí-li, zobrazí se výchozí text před první značkou.
  • Výchozí text může nést vlastní kód, například „cs:Obecné#en:General“; kód se nezobrazí.
  • Hodnoty výběrových seznamů se překládají každá zvlášť, například „Aktivní#en:Active;Neaktivní#en:Inactive“, a do databáze se ukládá celý vícejazyčný text.
  • Obsah prvku „RichText“ se jako celek nepřekládá. Souvislý text se proto píše do samostatného prvku pro každý jazyk (vlastnost „Jazyk“), krátké popisky lze přeložit serverovou funkcí „TRANSLATE“. V JavaScriptu slouží k překladu funkce „translate“.

Seznam textů, kterým chybí překlad do jazyků používaných uživateli, zobrazuje report Názvy k přeložení.

Jazyk lze pro aktuální session změnit i parametrem „language“ v adrese stránky, například „Form.aspx?form=12&language=en“.

Jazyk a uživatel

Jazyk aplikace je v NET Genium úzce spojen s uživatelem. Platforma umožňuje:

  • nastavit preferovaný jazyk pro každého uživatele,
  • automaticky přizpůsobit uživatelské rozhraní podle tohoto nastavení,
  • kombinovat vícejazyčné prostředí s řízením oprávnění.

Tento přístup zajišťuje, že každý uživatel pracuje v prostředí, které je pro něj srozumitelné, aniž by to ovlivnilo ostatní uživatele systému.

Doporučení pro návrh vícejazyčných aplikací

Při návrhu aplikací, které mají podporovat více jazyků, se doporučuje:

  • počítat s vícejazyčností již při návrhu struktury aplikace,
  • vyhnout se pevně zapsaným textům v aplikační logice,
  • používat konzistentní terminologii napříč jazyky,
  • průběžně kontrolovat úplnost překladů.

Tento přístup výrazně zjednodušuje další rozvoj aplikací a jejich přizpůsobování novým jazykovým prostředím.