国际化支持概念与理解_第1页
国际化支持概念与理解_第2页
国际化支持概念与理解_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、国际化支持概念与理解国际化支持Globalization(G11N)首先明确G11N的概念划分,只有一个公式:|G11N=I18N+L10N其中I18N指的是internationalization,L10N指的是localization。其实i18n和110n区别还是挺大的,i18n更多指的是在编程技术上支持产品实现国际化,而110n则指的是本地化相关,包括翻译质量等等这些。将这两点划分开才能更好地理解国际化支持的内容。i18n支持定义首先在做java国际化支持分析之前,先给出我司关于i18n支持程度的一个定义:,level1:输入输出产品安装相关,包括键盘输入法、路径等等level2:与l

2、ocale相关的,比如日历,日期,数字格式,排序,currency等level3:就是指的string抽取,以及layout显示相关。三者并没有上下级层级关系,而是并行的。区分i18nsupportedlocales和l10nsupportedlocales明确了i18n和l10n的各自概念范围,那么就有一个问题了,这两者所对应的支持locale是否是一致的呢?这个大概公说公有理婆说婆有理吧,但是明确这两者的区别还是蛮重要的,如下图所示:L=vel3tmeforma:numb-ErbmiEtI珈ircjrrecysortng*/1sungErler-alLamondateformal可以看出,

3、i18nsupportedlocales影响的是level2的支持范围,而l10nsupportedlocales则影响的是level3在很多情况下,由于产品的市场覆盖和预算要求,只能支持部分locale的本地化,但是产品又希望在英文的产品界面下,的用户有比较友好的展示,比如日历和数字等等,这种情况下,两个localesupport的集合就有了不一致。但并非所有的产品经理都觉得在rr=F;IIharkIIIr=vf;llh3rtoral7prfimans1?英文页面上展示非英文的数字格式等是合理的需求,所以此时两者的取值集合是一致的。持范围。够对其他localeInraliysrlia叶wri

4、finrrirprti-n总的来说,虽然两个localeset的取值集合可能会一致,但是从概念的角度来说,还是应该明确地区分,同时也建议程序员在设计i18nframework的时候,将两者分开,以保留更多的灵活度,当然,由于分开的设计也可能会引入各自localefallback行为的不一致,这一点会在后面详细讨论。locale解析在此之前在locale被解析之前,有一些规范化的工作可能会有必要,譬如说locale字串本身的格式化和locale的定制化映射,具体取决于所用的编程语言和技术框架,例如java就无需这些处理,但是比如extjs可能就需要开发人员特殊注意。locale规范化包括两个方面

5、:locale字串大小写下划线还是短横线:dashvsunderscore?定制映射表譬如extjs无法处理一些常见的locale映射,例如:zh-Hant-TW-zh-TWzh-Hans-CN-zh-CN因此在这种情况下,可能需要将locale进行映射,拿到映射的locale进入下一步的解析工作。其实本质上这个定制的映射表也就是一种localefallback行为的定义。localefallback这一节是我比较不喜欢的章节localefallback我个人还是比较喜欢java的fallback行为的,定义的很清晰很规范,因此在这里我也主要讲一下java的fallback机制吧。在搞明白ja

6、va的fallback机制之前,首先要了解locale的格式组成。localelocale的BCP47标准BasicBCP47LanguageTagStructureScript:Greek站Language:GreekExlensfonrUnicodelocals-Greekfewercasenumerals可见一共可以由下面几个部分:LanguageScriptCountry(region)VariantExtensionsPrivateUse常见的locale大概就到variant就很长了以zh-Hans-CN为例,zh就是language,Hans就是script,CN就是country(region)部分了。结构直接用L-S-C-V代表了比较简洁明了Javalocalefallback机制知道了LSCV,后面就非常简单啦就是一个rule+2个特例:个rule是指:FirstkeepL&S,removeV,Cinorder;ThenletS=NULL,RemoveV,Cinorder.L-S-C-VL-S-CL-SL-C-VL-CL两个特例是指zh-cn/zh-tw和另外一个norwegian的语言,如下。L(“zh”),S(“Hant”),C(“TW”)L(“zh”),S(“Hant”)L(“zh”),C(“TW”)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论