我无法理解国际化和本地化之间的区别?我读了这些条款,但不明白,请给出简单的例子和解释,在此先感谢。
国际化是一种开发技术,可促进产品(如软件或硬件)适应产品开发所在地区以外的地区的语言和文化特征。
软件本地化是使软件适应一个国家的文化的过程。尤其是将用户界面、文档和相关软件文件从一种语言翻译成另一种语言。
我无法理解国际化和本地化之间的区别?我读了这些条款,但不明白,请给出简单的例子和解释,在此先感谢。
国际化是一种开发技术,可促进产品(如软件或硬件)适应产品开发所在地区以外的地区的语言和文化特征。
软件本地化是使软件适应一个国家的文化的过程。尤其是将用户界面、文档和相关软件文件从一种语言翻译成另一种语言。
国际化(i18n)本质上是技术的创造,而本地化是使用技术的实际过程。
例子
在 Android i18n 中,资源分布在不同的文件夹中,文件夹名称为:
values-[locale]
或values-[locale]-r[region]
,例如:很明显,这是有原因的,这一切的背后有一个谷歌开发的API,这个API的实际创建被称为国际化。
现在,本地化是关于编写符合国际化规则的资源/代码。在 Android 的情况下,文件的创建(当然不仅仅是它)
res/values-ru/strings.xml
将应用程序本地化为俄语。阅读到wiki的末尾
事实上,如果你看一下制作,你就会看到不同之处。
生产国际化和生产本地化
您可以通过一个简单的示例看到差异:
为了能够显示不同语言的问候语,我们将所需的语言作为第一个参数传递给应用程序,即
args[0]
. 第一步是使应用程序国际化,即准备其代码以更改问候语:现在我们的应用程序已经国际化并准备好进行本地化,即添加新资源。让我们本地化为俄语和乌克兰语:
剩下的就是从应用程序代码中取出资源并添加对传递参数的检查。