Localization 本地化基本规则
前几天我刚刚将我的第一个本地化应用提交到iPhone应用商店。我决定这样做是为了学习应用程序本地化,因为我的应用程序非常简单,可以用我平庸的法语进行本地化。我知道我并不是每件事都做得“对”,但我从这件事中学到了很多。我希望在我未来的应用程序中继续这样做 首先,我学会了在编写代码时考虑本地化,但在你的应用程序准备发布之前不要开始本地化。我花了太多时间在2个UI文件中做一些小调整 您最喜欢的本地化基础知识、基本规则和最佳实践是什么?Localization 本地化基本规则,localization,Localization,前几天我刚刚将我的第一个本地化应用提交到iPhone应用商店。我决定这样做是为了学习应用程序本地化,因为我的应用程序非常简单,可以用我平庸的法语进行本地化。我知道我并不是每件事都做得“对”,但我从这件事中学到了很多。我希望在我未来的应用程序中继续这样做 首先,我学会了在编写代码时考虑本地化,但在你的应用程序准备发布之前不要开始本地化。我花了太多时间在2个UI文件中做一些小调整 您最喜欢的本地化基础知识、基本规则和最佳实践是什么? 我的想法主要是针对像我这样的小爱好开发人员,尽管来自大联盟的东西也
我的想法主要是针对像我这样的小爱好开发人员,尽管来自大联盟的东西也会很有趣。对我来说最大的一个是不要连接字符串: 坏的: 好:
"You have {0} messages"
语序因语言而异,因此您无法假设动态数据可能出现在句子的哪个位置 对我来说最大的一个是不要连接字符串: 坏的: 好:
"You have {0} messages"
语序因语言而异,因此您无法假设动态数据可能出现在句子的哪个位置 在您的UI中,允许将英文翻译扩展约30-50%。我在职业生涯早期学会的一种方法是制作一个“pig latin”本地化版本的UI 如果你的用户界面仍然是清晰的拉丁语,它可能会在真正的语言 如果我们所有的用户通道都是这样的话,我会留在Igpay里 阿蒂雷,它很可能会在伊雷 语言技能
在您的UI中,允许从英语翻译扩展大约30-50%。我在职业生涯早期学会的一种方法是制作一个“pig latin”本地化版本的UI 如果你的用户界面仍然是清晰的拉丁语,它可能会在真正的语言 如果我们所有的用户通道都是这样的话,我会留在Igpay里 阿蒂雷,它很可能会在伊雷 语言技能
- 对所有字符串使用Unicode-UTF-16或UTF-8。如果读取/写入默认情况下不采用的任何程序/格式,请确保显式指定UTF-16或UTF-8
- 正如Mike Sickler所说,不要连接字符串。更好的是,不要有插入语的句子,因为你不知道插入语如何影响句子的其余部分-不同的语言在复数/等方面有不同的规则
“您有”+messageCount+“messages”
更好:“你有{0}条消息”
(但是如果{0}==1怎么办?你写消息吗?希伯来语呢,名词后面是“一”,前面是其他数字?)
最佳:“消息:{0}”
- 正如rhsatrhs所说,允许30-50%的扩张。在我的(大联盟)公司里,我们通常认为德语是最长的,尽管我发现有时俄语比德语大100%。我怀疑有时翻译人员不知道确切的术语,所以他们使用封闭术语编写更长的描述(例如:Symbol==>源代码引用标记)
- 对所有字符串使用Unicode-UTF-16或UTF-8。如果读取/写入默认情况下不采用的任何程序/格式,请确保显式指定UTF-16或UTF-8
- 正如Mike Sickler所说,不要连接字符串。更好的是,不要有插入语的句子,因为你不知道插入语如何影响句子的其余部分-不同的语言在复数/等方面有不同的规则
“您有”+messageCount+“messages”
更好:“你有{0}条消息”
(但是如果{0}==1怎么办?你写消息吗?希伯来语呢,名词后面是“一”,前面是其他数字?)
最佳:“消息:{0}”
- 正如rhsatrhs所说,允许30-50%的扩张。在我的(大联盟)公司里,我们通常认为德语是最长的,尽管我发现有时俄语比德语大100%。我怀疑有时翻译人员不知道确切的术语,所以他们使用封闭术语编写更长的描述(例如:Symbol==>源代码引用标记)