|
|
1
14
我用用例或动作类名作为文本的前缀。如: PlaceOrder.invalidId=Invalid id for order {0}
PlaceOrder.success=Your order {0} was successful
PlaceOrder.fail.visa=Your visa was ...
PlaceOrder.fail.communications=We could not...
PlaceOrder.submit=Buy now
Login=Login
Login.fail=Your credentials did not...
Login.alread=You are already logged in
这样可以避免碰撞: EditStudent=Edit EditClass=Edit EditCourse=Edit Course
另一种方式是按实体划分I组: Person.id=# Person.name=First name Person.surname=Surname 这些可以作为标题显示在具有实体的表上。它在以下情况下为您节省了时间: Person.id=# Class.id=# Course.id=Course Id
no=no 它被用作左上角单元格上的id(#)表格标题,但我们的法语翻译为法语做了以下操作: no=non
最后(但并非最不重要的)当您想要重构/重命名类并快速更新这些属性键而不必查看模板时,使用classname作为前缀将有助于您。 |
|
|
2
0
也就是说,它很容易被我们的开发人员阅读,并且可以在整个应用程序中需要的多个位置重用。 |
|
|
3
0
以英文文本为基础,但前缀为单词或短语出现的窗口/对话/what have you。至少在版面空间有限的情况下,您可能希望避免陷入到处都有完全相同的字符串的陷阱:这会阻止您通过缩写来获得像样的版面,特别是在芬兰语等多音节语言中。
不要忽视同音词的危险。提供上下文有助于防止这种情况。不要害怕使资源名称比实际的英语术语长,这可以极大地帮助翻译人员。 |
|
|
4
0
+@cherouvim的答案是1,但它总是归结为文档。 记录每个值(使用资源源文件格式支持的任何注释机制),包括每个参数的数据类型(如果字符串是formattable)。例如,用于.resx格式的VS编辑器公开了一个注释字段,这使它非常容易。
将被记录为如下内容:
|