国际化与本地化(英文:Internationalization and LocalizationQ通常写ؓ(f)I18n?/span>I10n。在资讯领域Q通常是指调整软gQ之能适用于不同的语言和地区?/span>
国际化是指在设计软gQ将软g与特定语a?qing)地钩的q程。当软g被移植到不同的语a?qing)地区时QY件本w不用做内部工程上的改变或修正。本地化则是指当UL软gӞ加上与特定区域设|有关的信息和翻译文件的q程?/span>
国际化和本地化之间的区别虽然微妙Q但却很重要。国际化意味着产品有适用于Q何地方的“潜力”;本地化则是ؓ(f)?jin)更适合于“特定”地方的使用Q而另外增ȝ特色。用一品来_(d)国际化只需做一ơ,但本地化则要针对不同的区域各做一ơ?/span>
q两者之间是互补的,q且两者合h才能让一个系l适用于各地?/span>
本地化国际化面(f)的如下一些困难:(x)
开发Y件时Q国际化和本地化对开发者是一个有挑战性的dQ特别是当Y件当初设计时没有考虑q个问题时。通常作法是将文本和其他环境相关的资源与程序代码相分离。这样在理想的情况下Q应对变化的环境时无需修改代码Q只要修改资源,从而显著简化了(jin)工作?/span>
开发团队需要h?jin)解其他语言和文化;而这L(fng)人才Q可能难以寻觅。而且资源的复制也可能成ؓ(f)l护噩梦。例如,如果某个语言中显C给用户的信息变化了(jin)Q其他的译版本都要随之变化?/span>Gettext之类软g库有助于解决q一问题?/span>
׃自由软g自由C改和再分发,因此它比较容易国际化。当KDE拥有70个语a版本Ӟ大多C有Y件只提供商业上有利可囄语言版本?/span>
国际化与本地化工作的焦点包括Q?/span>
u 语言
? ?sh)子文g
? 字母。目前大部分的系l都采用Unicode为标准来解决字符~码?/span>
? 不同的数字命名系l?/span>
? 书写方向。譬如d语是从左到右Q而L斯语、希伯来语和阿拉伯语是由叛_左?/span>
? 相同语言在不同地区的拼法差异Q如国p、加拿大p使用localizationQ而英国英语和xp使用localisation?/span>
? 文g处理上的差异Q如某些文字存在大小写,其它则否。字母顺序?/span>
? 文字的图像表C(打印物、内含联机图片)(j)?/span>
? LQ音频)(j)
? 视频的字q?/span>
u 文化
? 囄和颜Ԍ(x)q牵涉到理解和文化适宜的议题?/span>
? 名字和称?/span>
? 政府l定的编码(如美国的C会(x)安全码,英国?/span>National Insurance numberQ爱沙尼亚的Isikukood?qing)其它各国的w䆾证号码)(j)和护?/span>
? ?sh)话L(fng)、地址和国际邮递区?/span>
? 货币Q符受货币标志的位置Q?/span>
? 度量?/span>
? U张大小
u 书写?fn)?/span>
? 日期跟时间的格式Q包含各式日历?/span>
? 时区Q在国际场合?x)用世界标准时_(d)(j)
? 数字格式Q小数点、分隔点的位|、分隔所用的字符Q?/span>
? 产品和服务所要面向的法规