1.2 Internationalization
Checklist
You can use the following checklist to make sure that you
follow all the steps that are necessary to localize your source
code:
- The user interface is
localizable. Text strings do not have problematic wording, hard
coded linguistic features, or characters that might not be viewable
or understandable to the translator. Icons are not linguistically
based. Where there might be ambiguities for the translator, annotations
have been prepared. (See Eliminating Code Problems.)
- Text formatting conventions, such as sort order,
case conversion rules, and time and number notations, are dynamically
selected and applied by the program, based on the user’s
locale information. (See Eliminating Code Problems.)
- Direct interactions with hardware are isolated from
the program. Hardware-specific resources like addresses for timers,
interrupt controllers, ROM routines, and video memory are isolated into
separate modules that are selected and bound with the program based
on the user’s machine type. (See Eliminating Code Problems.)
- Variations in localized text, such as the length
of text strings and the order of insertion parameters, are dynamically
detected and handled by the program. (See Eliminating Code Problems and Handling String Expansions.)
- Double-byte characters in text are dynamically detected
and handled by the program, based on the user’s character
set. This applies to all character input, processing, and output
operations. (See Handling Double-Byte Characters.)
- Unicode conversions are made when interfacing with
software that uses Unicode standards. (See Converting To/From Unicode).
- User interface resources, such as text strings and
help files, are isolated into separate modules. The modules are
dynamically selected and bound with the program, based on the user’s language.
(See Creating/Updating
an XLIFF File.)