Revisione della localizzabilità

L'analisi della localizzabilità è un passaggio intermedio nello sviluppo di un'applicazione internazionale. Viene verificato che un'applicazione globalizzata sia pronta per la localizzazione e viene identificato qualsiasi codice o aspetto dell'interfaccia utente per cui è richiesta una gestione speciale. Questo passaggio consente di garantire che durante il processo di localizzazione non verranno introdotti difetti funzionali nell'applicazione. Quando tutti i problemi generati dall'analisi della localizzazione vengono risolti, l'applicazione è pronta per la localizzazione. Se l'analisi della localizzabilità è completa, non è necessario modificare nessun codice sorgente durante il processo di localizzazione.

L'analisi della localizzabilità è costituita dai tre controlli seguenti:

Implementare le raccomandazioni per la globalizzazione

Se l'applicazione è stata progettata e sviluppata pensando alla localizzazione e se sono stati seguiti i consigli forniti nell'articolo Globalizzazione, la revisione della localizzabilità sarà principalmente un passaggio di controllo di qualità. In caso contrario, in questa fase sarà necessario rivedere e implementare le raccomandazioni per la globalizzazione e correggere gli errori nel codice sorgente che impediscono la localizzazione.

Gestire le funzionalità dipendenti dalle impostazioni cultura

.NET non dispone di supporto a livello di codice in numerose aree, che variano notevolmente in base alle impostazioni cultura. Nella maggior parte dei casi, è necessario scrivere codice personalizzato per gestire le aree funzionali come segue:

  • Indirizzi

  • Numeri di telefono

  • Formati carta

  • Unità di misura di lunghezza, peso, area, volume e temperatura

    Anche se .NET non offre il supporto predefinito per la conversione tra le unità di misura, è possibile usare la proprietà RegionInfo.IsMetric per determinare se in un paese o un'area particolare viene usato il sistema metrico, come illustrato di seguito.

    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.
    

Testare l'applicazione

Prima di localizzare l'applicazione, è necessario testarla utilizzando i dati internazionali in versioni internazionali del sistema operativo. Sebbene la maggior parte dell'interfaccia utente non sarà localizzata in questa fase, sarà possibile rilevare problemi come i seguenti:

  • I dati serializzati che non si deserializzano correttamente nelle versioni del sistema operativo.

  • Dati numerici che non riflettono le convenzioni delle impostazioni cultura correnti. Ad esempio, i numeri possono essere visualizzati con separatori di gruppi, separatori decimali o simboli di valuta non corretti.

  • Informazioni di data e ora che non riflettono le convenzioni delle impostazioni cultura correnti. Ad esempio, i numeri che rappresentano il mese e il giorno possono essere visualizzati nell'ordine errato e i separatori di data o le informazioni sul fuso orario possono essere errati.

  • Risorse che non sono disponibili in quanto non sono identificate le impostazioni cultura predefinite per l'applicazione.

  • Stringhe visualizzate in modo anomalo per le impostazioni cultura specifiche.

  • Confronti di stringhe o confronti per l'uguaglianza tramite cui vengono restituiti risultati imprevisti.

Se durante lo sviluppo dell'applicazione sono stati seguiti i consigli per la globalizzazione, le funzionalità dipendenti dalle impostazioni cultura sono state gestite correttamente e i problemi di localizzazione riscontrati durante i test sono stati identificati e risolti, è possibile procedere al passaggio successivo, Localizzazione.

Vedi anche