One of the first decisions that you must make is how users will specify what language or language and region they want the application to use. This question involves several parts. First, .NET Framework applications make a distinction between the language and region used for the user interface and the language and region used for cultural formatting. The user interface refers to the text and images that are shown to the user. Cultural formatting refers to issues such as the formatting of dates, numbers, and currencies. The first part of this decision involves whether you should allow your users to make a distinction between these two settings. If they can make a distinction between these two settings, it would be possible to have the user interface in, say, Spanish but use cultural formatting for the U.S. This would be useful for the millions of Spanish-speaking people who live and work in the U.S. (although you might argue that creating a custom culture is a better solution). Second, you should be aware that languages vary from region to region. English as spoken in the United States is not exactly the same as English as spoken in the U.K. The same is true for French in Canada compared with French in France, and, perhaps more important, Portuguese in Brazil compared with Portuguese in Portugal. One of the decisions you must make is how specific your translations will be. If you translate from English to French, will you use a single French translation for all French-speaking countries, regardless of their region? Imagine that you had to use an application in which the phrase, "The bank has not honored this check," is displayed as "The bank has not honoured this cheque" (which uses the British English spelling). In the United States, you would probably get support calls complaining of spelling errors in the application. |