Content found in this wiki may not reflect official Church information. See Terms of Use for more information.

Locale (Internationalization best practices)

From TechWiki
Jump to navigationJump to search

Internationalization best
practices

Edit

Principle: Locale awareness is fundamental to providing a positive and understandable experience for global users.

Locale preferences


Best Practice: Detect locale and allow the user to set a locale preference if appropriate.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft, Java Tutorials

Language preferences


Best Practice: Detect language and allow the user to set a language preference if appropriate.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: IBM

Fonts


Best Practice: Support locale-standard fonts.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft

Sorting


Best Practice: Provide locale-sensitive sorting.

Sorting and comparing strings is a language-dependent activity and must be properly handled. What constitutes a sorted list is different for different cultures. For example, vowels with accents fall after the letter "z" in Swedish. But vowels with accents fall after their base vowel in other European languages. Not all languages use an alphabet -- so organizing information alphabetically will not work for all languages. Asian languages sort by various non-alphabetic factors like phoneetics, radical order, number of strokes.

Roles, responsibilities, and examples:

  • BA/IxD: Ensure that organizational and navigational constructs account for different cultural norms. This might mean providing an alphabetical approach for some languages and a different approach where needed.
  • Developer: Be sure to follow the guidelines for handling string collation and comparison in an culturally appropriate way. Information for .NET and Java can be found at the links below. Other technologies should have their own guidelines for internationally appropriate collation. If they do not, perhaps the technology is not appropriate to develop an international application.
  • Tester: Check the application to ensure it appropriately collates various languages.

Links: Microsoft, Oracle

Searching


Best Practice: Provide locale-sensitive searching.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: IBM

String comparison


Best Practice: Provide locale-sensitive string comparison.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft, Java Tutorials

Case handling


Best Practice: Provide locale-sensitive handling of upper and lower case.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft

Calendars


Best Practice: Provide locale-sensitive calendars.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft

Dates


Best Practice: Provide locale-sensitive date formatting.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft, Java Tutorials

Time


Best Practice: Provide locale-sensitive time formatting.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft, Java Tutorials

Currency


Best Practice: Provide locale-sensitive currency formatting.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft, Java Tutorials, XenCraft

Numbers


Best Practice: Provide locale-sensitive number formatting.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft, Java Tutorials

Names


Best Practice: Allow locale-dependent personal names.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: IBM

Addresses


Best Practice: Allow locale-dependent address formatting.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft

Phone numbers


Best Practice: Allow locale-standard phone number formatting.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft

Time zones


Best Practice: Support time zones appropriately.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: IBM

Units of measure


Best Practice: Allow locale-dependent units of measure.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft

Math formats


Best Practice: Allow locale-sensitive math formats.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: IBM

Keyboards


Best Practice: Support locale-standard keyboards and IMEs.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft

Spacing and punctuation


Best Practice: Allow locale-sensitive sentence spacing and punctuation characters.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: IBM, Java Tutorials

Line breaking


Best Practice: Support locale-sensitive word and line breaking.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft, Java Tutorials

Start or end of line characters


Best Practice: Follow locale-specific rules regarding characters that can begin or end a line.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: IBM

Paper sizes (application)


Best Practice: Allow locale-standard paper sizes.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft

Paper sizes (printer)


Best Practice: Accommodate local paper sizes in the printer.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: IBM

Mirroring


'Best Practice: Enable mirroring awareness (for bi-directional languages.)

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: Microsoft

Bidirectional text entry


Best Practice: Use services provided by the underlying software or platform to support bidirectional text entry.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: IBM, IUC 35 PPTs

Bidirectional attributes


Best Practice: Maintain bidirectional attributes when processing, exchanging, and presenting text.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: IBM, IUC 35 PPTs

Directional functions


Best Practice: Don't write presentation functions that presume a left to right orientation.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: IBM

Graphics and text orientation


Best Practice: Ensure that artwork orientation and text orientation are independently specified.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: IBM, Java Tutorials

Character shaping (Arabic)


Best Practice: Rely on services provided by the underlying software or platform to control the shaping of Arabic characters.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: IBM, Java Tutorials

Intercharacter gaps (Arabic)


Best Practice: Don't display intercharacter gaps (Arabic).

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: IBM

Government regulations


Best Practice: Recognize that government regulations can be locale dependent.

<Overview to be written>

Roles, responsibilities, and examples:

  • BA/IxD: <to be written>
  • Developer: <to be written>
  • Tester: <to be written>

Links: IBM