Linux 版 (精华区)

发信人: netiscpu (网中鸟~~flying), 信区: Linux
标  题: 概观 -- 国际化与本土化
发信站: 紫 丁 香 (Sat Oct 30 16:45:12 1999) WWW-POST



                       概观 -- 国际化与本土化 

 原文: Mozilla Internationalization & Localization Guidelines
 翻译: 吴亦清 yichingw@seas.ucla.edu

 很久很久以前,在那幽暗, 原始的软体发展过去史, 许多软体只能 "说"一种人类的语
 言. 各国或地区需要自己的版本. 在某些案例, 跟国际性有关联的特徵被修整成为运
 送英文的产品. 在别的例子, 英文的和国际版本也许是完全分开的产品, 或许分享一
 些基本程式码, 但是经常共享一点超过产品的名称. 特别是原在欧美发展产品的亚洲
 版本. 在两种情况下, 无论反过来改变一个运送的产品, 或者发展平行版本, 结果,
 通常是一个冗长而昂贵的产品周期. 

 即使一个软体机能上能在超过一个国家使用, 生产一个适当的语言版本产品仍然很困
 难. 这是因为选单, 对话方块和讯息这些组成使用者界面 (UI) 的东西经常是直接写
 在程式原始码中 (比如用 printf 的结构). 

 成功地翻译原始码是十分困难的, 有一堆原因能证明这是昂贵而耗时的工作. 需要难
 以达到的工程知识和语言能力的组合; 容易发生错误, 而且翻译过的原始码经常不能
 预期的作用, 因为它的作者作了一些假设, 例如 UI 使用的语言, 英文长度或位置等
 等 (翻译到别的语言後, 这些都会改变) 

 这实在是坏事. 

 幸运地, 越来越多的软体开发者了解到, 如果他们设计的产品一开始就 了解到多语
 环境的使用, 这些产品将用更少的花费, 更快达到全球市场, 比那些照 "糟糕的老方
 法" 设计的产品更成功. 这样的多环境产品能够被叫作 "全球通用的" (globally
 enabled) 全球通用的软体是能支持一个大□围的语言, 文化习俗, 字体, 解码和别
 的特徵而让它非常有用, 不只在一国或一个地区,而是全世界. 再者, 对於全球通用
 的产品, 使用者介面跟核心码是分开的, 能让软体翻译时有不须重新编译. 既然全球
 通用的软体. 不假定使用者界面的语言, 翻译过程能更有效, 需要更少的 "修正"或
 者特别加强支持某种语言. 加速翻译过程. 

 这是好事. 

 Mozilla 家族 (Navigator和 Commuincator)就是 (而且必须保持是)全球通用的.
 Mozilla 各平台的二进位码支持北美英文, 西欧, 中欧, 中文, 日文和韩文环境. 使
 用者界面包含在资源档案中, 绝大部分和核心二进位码完全分开. 从核心码分离的UI
 代表著, 你不需要一个日文版的 Mozilla 去浏览日本的网页. 你能使用英文的, 法
 文的或者任何版本的 Mozilla 来浏览日本的网页, 反之亦然 (当然要适当的字体跟
 设定). 

 这是非常好的事. 

 这份文件剩下的部分是要传达充足的资讯, 所以你能继续去让 Mozilla 成为一个全
 球通用的软体计划. 将来的 Mozilla 产品必须至少继续支持今天的国际化程度. 再
 进一步,我们要延伸 Mozilla 支持越来越多的语言, 解码和别的全球性有关的特色. 

 这将是真正的, 完全的好事. 

 定义 

 在下一步之前, 让我们建立一些在此处常用的术语和概念: 

 Internationalization 国际化 
 (又名全球化, 又名使能化..) 设计和发展一个软体产品能在多语环境中执行. 这程
 序包含识别必须支持的环境, 设计支持那个环境的特徵, 和写出能在任何环境作用良
 好的程式码. 

 Localization 本土化 
 修改或者采用一个软体产品到适合需求的某个环境. 这程序包含(但可不限)翻译使用
 者界面, 文件和包装, 改变对话方块大小, 按用户要求制做特徵 (如果必须), 和测
 试翻译产品, 保证仍然能够作用 (至少跟原来的一样). 

 Localibility 本土性 
 一个软体产品本土化的能力. 本土化的产品把程式码跟资料分开, 在本土化後仍能适
 当的显示翻译的语言和功能. 

 i18n 
 "internationalization" 的缩写字( "i" + 18个字母 + "n";小写的 i 是为了要区
 别数字 1 (一)). 

 L10n 
 "localization" 缩写字 ("L" + 10个字母 + "n";大写的 L 是用来区分数字 1 (
 一)). 

 L12y 
 "localibility" 的缩写字 ("L" + 12个字母 + "y";大写的 L 是用来区分数字 1 
 (一)). 

 环境 (locale) 
 一组由语言和习俗影响或决定的惯例, 或由一个地理区域定义. 这些惯例包含(但是
 不必然限制於)书面语, 日期, 数字和货币的格式, 排序等等 

 资源 (Resource) 

   1.任何在程式中能被使用者看到或改变的任一部份 
   2.任何一些资料, 相对於程式码而言. 

 核心产品 (Core Product) 
 软体产品中无关语言的部分 (相对於区分任何本土的版本产品 -- 包含英文版本).
 然而有时, 相对於其他地区而言, 这个词(Core product)被用来称呼英文的产品. 

 理由 (或者 "为什麽我要关心?") 
 网际网路, 可议的, 是自从某些穴居人学到靠敲打空心树干去通知其他族人以来一个
 人类通讯会话的大革命. 但是, 唯有当递送机制能够适当地掌握混乱的, 由语言, 解
 码和本土期待这些构成我们的不同的文化的巴比伦塔的时候, 这才是一个连接世界上
 不同的民族的, 全球通用的媒介. (译注: 圣经中上帝为了要惩罚妄想建造巴比伦塔
 到天上的人类, 因此混乱人类的语言, 让他们无法沟通) 前文已述及, 这个问题关系
 到重建单语产品去支持不同环境. 唯一的答案就是适当通用的软体, 不局限於只有唯
 一的, 单语的应用. 

 如果你的应用是真的只关系的到一个有限的, 由语言或环境定义的听众群, 那你可能
 不需关心国际化或本土化的议题. 然而, 如果你的应用能是有用的, 不管在世界哪里
 使用, 或者你的用户散布多个国家, 地区或者语系,为什麽要使接触他们更困难? 照
 著下列这些指导方针. 将会使发行一个全世界的成功的产品更容易. 

 如果走捷径和/或者错误在核心产品发展中发生, 在本土化过程中去改正错误会是耗
 时和昂贵的过程. 这样的延迟和花费会从本土化产品吃掉利润 (在金钱上和机会上都
 是). 适当通用的产品能帮助转变本土化过程, 从一个混乱和昂贵的 "追赶" 游戏,
 变成一个平滑的已上油的机器. 

 对於目前的这些指导方针理由, 然後是创造一个国际通用的环境, 本土化的产品能够
 尽快而顺利的释放. 当你在作各种不同的计划时, 请反覆在心里记住: 

       一种基础码用於全世界 
       英文只不过是另一种语言 




 TOP


(C) 修改日期: Friday, October 15, 1999 03:15:00



            
--

                              Enjoy Linux!
                          -----It's FREE!-----

※ 来源:·紫 丁 香 bbs.hit.edu.cn·[FROM: ustsu54-nc2.ust] 
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.784毫秒