There are more than 6,000 languages in use around the world today. So imagine the vast array of characters your application is introduced to. Any software product that involves users across the globe, has a very important requirement - the ability of users to interact with it in their own specific language, locale or cultural conventions. There are two main concepts that facilitate a software for international use
- Internationalization - The software is designed such that it can be used in multiple geographic locations. This involves requirements such as requiring all messages and constants to be stored externally and not hard coded. Date, time or currency should not be assumed to have a certain convention but instead should be generic and manageable.
- Localization - This is the process of adapting internationalized software to the user needs in a particular region or locale. This includes ability to translate.