Internationalization is the process of designing an application so that it can be adapted to different languages and regions without requiring engineering changes.
Sometimes the term internationalization is abbreviated as i18n, because in the English language there are 18 letters between the first "I" and the last "n."
Localization is the process of adapting internationalized software for a specific region or language by adding locale-specific components and translating text.
In an internationalized program with the addition of localization data, the same executable can run worldwide.
The textual elements such as status messages and the GUI component labels are not hard-coded in the program.
Instead, they are stored outside the source code and retrieved dynamically.
This allows quick localization by maintaining a single source code base for all language versions, and also facilitates translations because all localizable resources are identified and isolated.
Java resources are a little different from Windows resource -RC files and resource-only dynamic link library -DLLs and Macintosh resource forks resources.
A windows exe will store resources such as menus and icons in a separate section that can be inspected and updated with a resource editor.
In Java all resource data must be stored in a class either as static variables or return values of method calls.
This means that usually you must code and compile a new source file each time support for an additional Locale is needed.
So what's a Resource Bundle?
Localizing an application consists basically making a set of classes that describe the locale specific items (messages, labels etc) for each locale that you want supported.
Each of these classes follows a specific predefined pattern that helps the VM locate and identify the particular resource.
The options are more or less limited to:
Subclass java.util.ResourceBundle
Use the specialized classes java.util.ListResourcebundle and java.util.PropertyResoucebundle.
We will look at these classes later but first some conventions.
Sameer Tyagi is a Software Engineer with several years of programming experience in iNet application development and has conducted multiple training workshops in Java. Besides holding an Engineering degree in Electronics he is a Sun Certified Java 1.1 Programmer.
Email: sameertyagi@usa.net
JavaBytes
Internet Cyclone
This powerful, easy-to-use, internet optimizer is for
Windows 95, 98, ME, NT, 2000 and XP. It's designed to
automatically optimize your Windows settings, boosting your
Internet connection up to 200%.
Blackmail Applet
This applet prints out text that looks like letters cut out of a
newspaper. You can specify the text, the width and height of the
applet and the delay after each letter. Future versions will
have more parameters.
While surveys suggest that small businesses aren't prepared for ever-present security dangers, this Boston-area printer has maintained a pristine operation since a scare six years ago.