name, first name, title). In some countries, the zip/postal code can appear before the name of the city and contain
letters as well as numbers.
• If users have the option to change display languages, display the name of the language in that language. For example,
display "Italiano" instead of "Italian."
• Test translated UI to verify the layout of the UI.
• During testing, type a pangram in the target language. A pangram is a sentence that uses each character in the
alphabet. Pangrams are useful because they include diacritics that can appear above, below, or beside a character.
Guidelines for color and graphics
• Be aware that colors, graphics, and symbols can have different meanings in different cultures. If you are designing an
application for a specific market, carefully consider the cultural implications of your design choices.
• Avoid text and numbers in icons and images because they require localization.
• Avoid using national flags to identify languages, user IDs, or countries. Use text instead.
Best practice: Coding for different
languages and regions
• Store text strings in separate resource files and use unique identifiers (string IDs) for each text string.
• Avoid concatenating partial strings to form a sentence. When translated, the strings might not produce a logical
sentence. Create a new string for the sentence instead.
• Avoid using variables in place of nouns (for example, "The <X> is locked."). Instead, create a specific string for each
noun. Even if the sentence appears correctly in English, in some languages, if a noun is singular or plural and masculine
or feminine, the rest of the string might need to change. Only use variables for strings that can only be known at runtime
(for example, file names).
• Avoid making part of a sentence into a link. When translated, the words in the link might appear in a grammatically
incorrect order. For example, use "For more information, click the following link: <link>" instead of "Click on <link> for
more information."
• Avoid using a common string if the context of usage differs. Depending on the context, a word could require different
translations. For example, the word "new" might require a different translation depending on the gender of the noun.
• Avoid hard-coding spaces, punctuation marks, and words. Include these items in translatable strings instead. This
approach allows translators to make changes according to the rules for each language.
• Avoid hard-coding strings of any kind, including weekdays and weekends. Verify that the start of the week matches the
convention for each locale.
UI Guidelines
Localization
35