The task of designing an application to work outside its country of origin can seem daunting. Often, programmers think that internationalizing means hard-coding dependencies based on cultural and linguistic conventions for just one country.
A better approach is to write an internationalized application: that is, one that examines the local computing environment to determine what language to use and loads files containing language-specific information at runtime.
When you use an internationalized application, a single application can be deployed in all countries. This has several advantages:
You write and maintain one application, not half a dozen (or more).
The application can be deployed, without change, in new countries as needed. You need only supply the correct localization files.
All sites can expect standard features and behavior.