Revize lokalizovatelnosti

Kontrola lokalizovatelnosti je přechodný krok vývoje aplikace připravené pro použití ve světě. Ověřuje, zda je globální aplikace připravena k lokalizaci a identifikuje jakýkoli kód nebo jakékoli aspekty uživatelského rozhraní, které vyžadují zvláštní zpracování. Tento krok také pomáhá zajistit, že proces lokalizace nezavede do vaší aplikace žádné funkční nedostatky. Když byly vyřešeny všechny problémy vyvolané přezkoumáním lokalizovatelnosti, je vaše aplikace připravená na lokalizaci. Pokud je kontrola lokalizovatelnosti důkladná, neměli byste během procesu lokalizace upravovat žádný zdrojový kód.

Kontrola lokalizovatelnosti se skládá z následujících tří kontrol:

Implementace doporučení globalizace

Pokud jste aplikaci navrhli a vyvinuli s lokalizací a pokud jste postupovali s doporučeními popsanými v článku globalizace , přezkoumání lokalizovatelnosti bude převážně složitosti. V opačném případě byste měli v průběhu této fáze zkontrolovat a implementovat doporučení pro globalizaci a opravit chyby ve zdrojovém kódu, které brání lokalizaci.

Zpracování funkcí závislých na jazykové verzi

Rozhraní .NET neposkytuje programovou podporu v řadě oblastí, které jsou široce závislé na jazykové verzi. Ve většině případů je třeba napsat vlastní kód, který bude zpracovávat oblasti funkcí jako následující:

  • Adresy

  • Telefonní čísla

  • Velikosti papíru

  • Měrné jednotky používané pro délky, váhy, oblast, hlasitost a teploty

    I když rozhraní .NET nenabízí integrovanou podporu pro převod mezi jednotkami měření, můžete použít RegionInfo.IsMetric vlastnost k určení, zda konkrétní země nebo oblast používá systém metrik, jak ukazuje následující příklad.

    using System;
    using System.Globalization;
    
    public class Example
    {
       public static void Main()
       {
          string[] cultureNames = { "en-US", "en-GB", "fr-FR",
                                    "ne-NP", "es-BO", "ig-NG" };
          foreach (var cultureName in cultureNames) {
             RegionInfo region = new RegionInfo(cultureName);
             Console.WriteLine("{0} {1} the metric system.", region.EnglishName,
                               region.IsMetric ? "uses" : "does not use");
          }
       }
    }
    // The example displays the following output:
    //       United States does not use the metric system.
    //       United Kingdom uses the metric system.
    //       France uses the metric system.
    //       Nepal uses the metric system.
    //       Bolivia uses the metric system.
    //       Nigeria uses the metric system.
    
    Imports System.Globalization
    
    Module Example
        Public Sub Main()
            Dim cultureNames() As String = {"en-US", "en-GB", "fr-FR",
                                             "ne-NP", "es-BO", "ig-NG"}
            For Each cultureName In cultureNames
                Dim region As New RegionInfo(cultureName)
                Console.WriteLine("{0} {1} the metric system.", region.EnglishName,
                                  If(region.IsMetric, "uses", "does not use"))
            Next
        End Sub
    End Module
    ' The example displays the following output:
    '       United States does not use the metric system.
    '       United Kingdom uses the metric system.
    '       France uses the metric system.
    '       Nepal uses the metric system.
    '       Bolivia uses the metric system.
    '       Nigeria uses the metric system.
    

Testování aplikace

Před lokalizací aplikace byste ji měli otestovat pomocí mezinárodních dat v mezinárodní verzi operačního systému. I když většina uživatelského rozhraní nebude v tomto okamžiku lokalizována, budete moci detekovat následující problémy:

  • Serializovaná data, která nejsou v rámci verzí operačního systému správně reserializována.

  • Číselná data, která nereflektují konvence aktuální jazykové verze. Čísla lze například zobrazit s nepřesnými oddělovači skupin, oddělovači desetinných míst nebo symboly měny.

  • Data a času, která nereflektují konvence aktuální jazykové verze. Například čísla představující měsíc a den se mohou zobrazit v nesprávném pořadí, oddělovače dat mohou být nesprávné nebo informace o časovém pásmu mohou být nesprávné.

  • Prostředky, které se nenašly, protože jste pro svou aplikaci neoznačili výchozí jazykovou verzi.

  • Řetězce, které jsou zobrazeny v neobvyklém pořadí pro konkrétní jazykovou verzi.

  • Porovnávání řetězců nebo porovnání pro rovnost, které vracejí neočekávané výsledky.

Pokud jste postupovali s doporučeními globalizace při vývoji aplikace, zpracování funkcí závislých na jazykové verzi a identifikaci a řešení problémů lokalizace, které vznikly během testování, můžete přejít k dalšímu kroku lokalizace.

Viz také