Joe Sam Shirah
>>国际化
同计算机编程有关的国际化是设计和编写应用程序以便可以在全球或多国环境中使用的过程。国际化程序能够支持不同的语言以及不同格式的日期、时间、货币和其它值,而无须软件修改。这通常涉及“软编码”或将文本组件同程序代码分离并且可能涉及可插入代码模块。
从业者通常将国际化(internationalization)简写为 I18N。原因是 internationalization 一词开始的 I 和最后的 N 之间有 18 个字母。试着多说、多写“internationalization”一词几次,您就会欣赏这个较短版本的价值。此外,您可能会看到“I18N′ed”作为“国际化的(internationalized)”的缩写形式。虽然这在语法上不准确,在技术上也不正确,但是“I18N′ed”很有用,您将在包括本教程在内的文献里经常看到它。
关系数据库治理系统和操作系统可能也对国际化的某些方面提供基本支持,通常使用术语“本地语言支持(National Language Support)”或 NLS 来表示。
>>本地化
本地化是设计和编写能够处理特定区域、国家或地区、语言、文化、企业或政治环境的应用程序的过程。从某种意义上说,为特定地区编写的所有应用程序都本地化了,虽然这些应用程序大多数只支持一种语言环境。然而,真正的本地化通常是由访问语言环境、位置、政治或其它特定组件和模块的核心代码,以及将文本翻译成适合于用户的版本来实现的。适当国际化的程序使本地化更为便利,并为本地化提供了基础。
与将“internationalization”缩写成“I18N”相同的原因和逻辑,本地化(localization)通常缩写为 L10N。
可以将处理多个国家或地区(比如说美国、加拿大、墨西哥和巴西)的税收或会计软件包国际化,使得无需对每个国家或地区重复定制显示、报表生成和其它程序。然后本地化该软件包以处理适合于特定国家或地区甚至可能是州或省的不同会计和报表生成过程。
>>I18N 存在的理由(I18N raison d′etre)
这一页的标题本身就为国际化提供了一个理由:没有接触过“I18N”或不懂法语(raison d′etre 的大致意思是“存在的理由”)的人将搞不清这一节是关于什么的。有时,缺乏知识是一个优点,这可以由人造钻石的成功来证实。然而,假如软件不能被人理解,那么不论开发人员多么沉醉于自己的聪明,它也是无用的。不便或惹人生气的软件用处也不大,不适于销售。
最开始时使用 ASCII。直至今日,大多数编译器仍要求 ASCII 输入。随着计算机的发展,需要额外的语言支持已为人们所公认,通常包含 ASCII 和本地语言的特定于国家或地区的字符集也随操作系统一起提供。即便如此,一般也只支持一种“其它”语言,大多数开发人员都根据他们自己的国家和当地文化来设计程序。由于历史和实际的原因,因特网和 Web 上的应用程序,通常遵循相同的模式。虽然重点通常在英语语言上,但是很轻易找到各种单语言应用程序和网站。
另外一个考虑是经济上的;在您的国家之外存在着巨大的市场。随着那些以前贫穷的国家或地区 GNP 的增长,对计算机的广泛接受以及上网人口的增加,市场正在改变。根据 Global Reach 的全球因特网统计信息(Global Internet Statistics)页面提供的信息,到 2001 年 12 月,大约 45% 的因特网人口讲英语。接下来是日语,大约占 9 %,紧随其后的顺序是中文、德语、西班牙语、韩国语、意大利语、法语以及其它语言。假定计算机访问跟踪类似的比例是合理的。虽然从 2001 年到 2005 年在线人口预期会翻一翻(在线商业预计从大约 1 万亿美元增长到 6 万亿美元),但整体讲英语的比例预期会持续下降到 39% 左右。
其它关注国际化问题的理由可能更接近于自身的利益:您的公司可能在其它国家或地区开设办事处,或者从位于另外一个国家或地区的潜在客户收到一个投标请求(Request For Proposal (RFP))。