xgqfrms™, xgqfrms® : xgqfrms's offical website of cnblogs! xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!

i18n 和 L10n (internationalization and localization) All In One

i18n 和 L10n (internationalization and localization) All In One

国际化与本地化(具有全球战略眼光的公司企业的必由之路)

在信息技术领域,国际化与本地化(英文:internationalization and localization)是指修改软件使之能适应目标市场的语言、地区差异以及技术需要。

国际化是指在设计软件,将软件与特定语言及地区脱钩的过程。
当软件被移植到不同的语言及地区时,软件本身不用做内部工程上的改变或修正。

本地化则是指当移植软件时,加上与特定区域设置有关的信息和翻译文件的过程。

国际化和本地化之间的区别虽然微妙,但却很重要。
国际化意味着产品有适用于任何地方的“潜力”;
本地化则是为了更适合于“特定”地方的使用,而另外增添的特色

用一项产品来说,国际化只需做一次,但本地化则要针对不同的区域各做一次
这两者之间是互补的,并且两者合起来才能让一个系统适用于各地。

基于他们的英文单字长度过长,常被分别简称 i18n(18意味着在国际化这个单字中,i和n之间有18个字母)及 L10n(10意味着在本地化这个单字中,l和n之间有10个字母)。

使用大写的L以利区分i18n中的i和易于分辨小写l1

wiki

https://zh.wikipedia.org/wiki/国际化与本地化

信息技术领域,国际化与本地化英文:internationalization and localization)是指修改软件使之能适应目标市场的语言地区差异以及技术需要。

国际化是指在设计软件,将软件与特定语言及地区脱钩的过程。当软件被移植到不同的语言及地区时,软件本身不用做内部工程上的改变或修正。本地化则是指当移植软件时,加上与特定区域设置有关的信息和翻译文件的过程。

国际化和本地化之间的区别虽然微妙,但却很重要。国际化意味着产品有适用于任何地方的“潜力”;本地化则是为了更适合于“特定”地方的使用,而另外增添的特色。用一项产品来说,国际化只需做一次,但本地化则要针对不同的区域各做一次。这两者之间是互补的,并且两者合起来才能让一个系统适用于各地。

基于他们的英文单字长度过长,常被分别简称成i18n(18意味着在国际化这个单字中,in之间有18个字母)及L10n(10意味着在本地化这个单字中,ln之间有10个字母)

使用大写的L以利区分i18n中的i和易于分辨小写l1

 

在如 Sun Microsystems IBM等企业中,则会使用全球化英文:globalization)来表示此两者的合称。[1][2]在英文中,也会使用g11n做为简称。

Some companies, like IBM and Sun Microsystems, use the term "globalization", g11n, for the combination of internationalization and localization.[6] Also known as "glocalization" (a portmanteau of globalization and localization).

Microsoft[7] defines Internationalization as a combination of World-Readiness and localization. World-Readiness is a developer task, which enables a product to be used with multiple scripts and cultures (globalization) and separating user interface resources in a localizable format (localizability, abbreviated to L12y).[8]

Hewlett-Packard and HP-UX created the system called NLS (National Language Support or Native Language Support) to produce localizable software.[1]

范围[编辑]

国际化与本地化工作的焦点包括:

  • 语言
    • 电子文件
    • 文字的图像表示(打印物、内含在线图片)。
    • 读法(音频)
    • 视频的字幕
  • 文化
  • 书写习惯
    • 日期跟时间的格式,包含各式日历
    • 时区(在国际场合会使用世界标准时间
    • 数字格式(小数点、分隔点的位置、分隔所用的字符)
  • 产品和服务所要面向的法规

只属于本地化的主题有:

  • 翻译
  • 针对特定语言(如东亚语言)的特别支持
  • 匹配当地习惯
  • 匹配当地的道德观念
  • 针对当地撰写内容
  • 符号
  • 排序方法
  • 美学
  • 当地的文化价值和社会环境

困难[编辑]

开发软件时,国际化和本地化对开发者是一个有挑战性的任务,特别是当软件当初设计时没有考虑这个问题时。通常作法是将文本和其他环境相关的资源与程序代码相分离。这样在理想的情况下,应对变化的环境时无需修改代码,只要修改资源,从而显著简化了工作。

开发团队需要人了解其他语言和文化;而这样的人才,可能难以寻觅。而且资源的复制也可能成为维护恶梦。例如,如果某个语言中显示给用户的信息变化了,其他的翻译版本都要随之变化。Gettext之类软件库有助于解决这一问题。

由于自由软件自由地修改和再分发,因此它比较容易国际化。当KDE拥有70个语言版本时,大多数专有软件只提供商业上有利可图的语言版本。

当然很多自由软件由于程序结构设计的原因几乎难以国际化,比如HandBrake

区域设置(locale)[编辑]

计算机中一套定义用户的语言、国家和用于定义用户希望在其用户界面上看到的各种可以改变的选择的参数集合。通常一个locale标识符至少包括一个语言标识符和一个区域标识符。

在UNIX和WINDOWS中,locale的控制是不同的。在UNIX下,通常通过环境变量来控制locale。这些环境变量包括:LANG,LC_ALL, LC_CTYPE, LC_TIME, 等等。你可以通过改变这些环境变量来控制你的程序或者命令所表现出来的locale,前提是这些程序或者命令必须是已经被国际化的和本地化的。在Windows下,你可以通过改变控制面板上的“语言/区域”中的区域的值来设定Windows的当前用户的locale。

参见[编辑]

参考资料[编辑]

外部链接[编辑]

demos

i18n & L10n

(🐞 反爬虫测试!打击盗版⚠️)如果你看到这个信息, 说明这是一篇剽窃的文章,请访问 https://www.cnblogs.com/xgqfrms/ 查看原创文章!

refs



©xgqfrms 2012-2021

www.cnblogs.com/xgqfrms 发布文章使用:只允许注册用户才可以访问!

原创文章,版权所有©️xgqfrms, 禁止转载 🈲️,侵权必究⚠️!


posted @ 2016-06-17 10:49  xgqfrms  阅读(581)  评论(13编辑  收藏  举报