Introduction
The term Software Internationalization (I18n) refers to the
process of engineering software in a fashion that allows it to
support any Locale. I18n is often confused with Localization
(L10n), which is the process of translating and otherwise making
locale-specific the translatable and localizable elements of an
application such as display text and images. The combination of the
two is Globalization (G11n). Globalyzer focuses on I18n, which
includes the following tasks:
- The removal of all embedded display strings from your
source code and the placement of those strings in resource files.
The embedded string is replaced with a call to retrieve the
appropriately translated string at runtime, according to the
locale of the user.
- The alteration of paths to localizable material such as
images, static HTML pages, style sheets, and XML files. The paths
must be altered to retrieve the localized element from a
locale-specific directory at runtime.
- The replacement or refactoring of method calls and
functions that are locale-sensitive. This includes any call that
may not return the results appropriate to the locale or character
encoding of the user.
- The refactoring of code to ensure support of the required
character set. This might be double-byte Unicode (UTF-16, UCS2),
UTF-8 (can be one or more bytes), or a character set native to the
target locale. Many programming languages, including C and C++,
contain character and string datatypes as well as functions that
assume either a single byte per character or the ASCII character
set.
- The process of altering SQL statements, re-architecting
database schemata and porting existing data into the desired
character set.
- General architectural analysis and alterations. It is
impossible to foresee all of the problems that will arise within
any given architecture. There will be character set
transliteration issues between your application and an integrated
third-party product; there will be formatting issues that arise
when your existing web pages are loaded with Asian characters.
Globalyzer can not attempt to solve all of these problems
automatically. However, through creative use of the General
Patterns category and access to source code, Globalyzer can assist
greatly in assessing the scope of these outlying issues.
The internationalization topics in the list below provide a general
discussion of internationalization issues. For information on
specific methods or functions detected by Globalyzer, refer to the
topic on Locale-Sensitive
Methods.
Click on a topic for more information:
Bi-Directional
Text Processing
Collation
Collation in Java
Collation
in Oracle 8i
Currency
Dates and Times
in ICU
Disclaimer
Email
Externalization
Strategies
Globalization Glossary
ICU Collator for
C/C++
Internationalized
Path Structure
Java Locale
Java
Locale Example
Locales in C/C++
Microsoft Code
Pages
Number Formatting
Oracle NLS Parameters
Prepared
Statements
Time and Date Functions
Unicode
Upper and
Lowercase Characters
|