Visual Basic Concepts

International Software Definitions

Before you start developing international software, you should know some fundamental terms.

International Software

International software is software that is marketable worldwide. A software product is international only if it is as functional in its foreign market as it is in its domestic market. For more information about how to localize your application, see "Designing International Software" later in this chapter.

Locale

A locale describes the user's environment — the local conventions, culture, and language of the user's geographical region. A locale is made up of a unique combination of a language and a country. Two examples of locales are: English/U.S. and French/Belgium.

A language might be spoken in more than one country; for instance, French is spoken in France, Belgium, Canada, and many African nations. While these countries share a common language, certain national conventions (such as currencies) vary among countries. Therefore, each country represents a unique locale. Similarly, one country might have more than one official language. Belgium has three — French, Dutch, and German. Therefore, Belgium has three distinct locales. For more information about locale-specific settings, see "General Considerations When Writing International Code" later in this chapter.

Localization

Localization is the process by which an application is adapted to a locale. It involves more than just literal, word-for-word translation of these resources — it is the meaning that must be communicated to the user. For more information about how to localize your application, see "Designing International Software" later in this chapter.

String Resources

String resources refers to all the text that appears in the application's user interface. They include, but are not limited to, menus, dialog boxes, and informational, alert, and error messages. If an application will be used in a locale other than the one in which it was developed, these resources will have to be translated, or localized.

For More Information   For definitions of East Asian terminology, see "ANSI, DBCS, and Unicode: Definitions" later in this chapter. For more information about string resources and resource files, see "Using Resource Files for Localization" later in this chapter.