将错误信息翻译成其他语言是否“正确”?

23
这在一定程度上取决于目标翻译语言,但请先耐心听我解释。最近我参与了一个翻译项目,目标是将MVC框架的字符串翻译成希腊语。该框架的70%语言字符串已经被翻译,但有意留下30%未翻译。决策是“我们不会翻译针对应用程序开发人员的错误消息”。简而言之,这种决策背后的原因有三点:1. 面向设计师/程序员;2. 面向开发人员,理想情况下不应显示给应用程序的最终用户,因为它们涉及到Web应用程序本身的内部工作原理。3. 最重要的是,这些错误信息使得开发人员在尝试获取更多有关错误的信息/帮助时变得更加困难。当你为应用程序开发语言翻译包时,你是否会翻译错误消息?你是否只翻译主流语言如英语/西班牙语/德语/法语?或者你是否保留它们?我不是在寻找“正确”或“正确”的答案,而是在寻找“最佳实践”答案,或者如果这个问题在你有经验的任何“官方”标准/政策中定义。

5
我的个人经历:作为法国人,大多数来自Java或Java开发工具的异常消息会被翻译成法语,除非我强制使用en_US。在我使用的几乎所有本地化应用程序中,翻译都很差。我不太理解这个过程:法国人英语水平不佳,浪费时间进行(糟糕的)本地化,希望帮助那些甚至英语水平更差的人?无论如何,在跳转到谷歌之前,我几乎总是被迫猜测原始的英文消息,否则我找不到任何有意义的帮助。所以,是的,英语是计算机的母语,请接受这一点。 - Gregory Pakosz
尽管希腊翻译的结果完全为0,但当我搜索错误信息的德语版本时,通常会在http://finderr.net上找到一些相关内容(只有一个结果)。希腊语也是如此吗? - Marek
8个回答

22
一个包含内置错误消息的良好框架应该具有国际化(i18n)选项。这对用户非常重要。
另一方面,异常消息不应被翻译。您已经指出了一个重要的原因-搜索。是的,它们是给开发人员而不是最终用户的。
如果异常消息也用作向用户显示的消息,则设计有误。异常可能包含i18n键。

4
感谢你对错误消息和异常消息进行区分。 - Iraklis

10

无论是否翻译,都要确保始终使用唯一的ID并允许用户复制它。


提示: 在某些应用程序中,按Ctrl+C会复制消息而不可编辑,可以实现相同的隐藏功能。


4
我只能提供我的个人意见,但对于像我这样的德国开发人员来说,获得翻译后的错误信息总是很烦人的,特别是像微软软件这样广泛使用的软件。原因如下:
  • 德语错误信息通常更难理解,因为德语让所有事情听起来更加复杂。此外,IT相关单词通常没有很好的翻译。德国开发人员要么使用英文单词,要么使用笨拙的字面翻译。 MSDN网站也是如此。

  • 此外,正如你已经提到的,它使在英文网站上通过谷歌找到解决方案变得更加困难。德国开发人员社区比英语社区小得多...


第二个问题(难以找到本地化消息)可以通过搜索英语等效项(而不是翻译)来解决 - 有一个目录为.NET提供匹配翻译:http://finderr.net/ - Marek
谢谢提供链接,这对我以后可能会有用。然而,这个网站的存在本身就表明,如果错误信息是针对开发人员的话最好不要翻译。 - Adrian Grigore

3

如果应用程序是针对普通商业或消费者用户的,并且错误消息显示给他们以便他们可以理解或根据此采取某些操作,则我认为应该翻译。如果错误消息仅用于记录和故障排除,则不需要翻译。


2
那么把它们打印成两种语言怎么样?用户/本地管理员知道正在发生什么,并可以搜索并与开发人员进行沟通。

2

请不要翻译异常信息,否则可能会变成翻译噩梦。

我经常使用Microsoft Office自动化。已翻译成希伯来语的异常信息让我非常困扰:

  1. 大多数异常信息我在Google / MSDN上找不到,因此我必须将其翻译回英文,以便于搜索。
  2. 其中一些异常信息是用翻译后的类名引用对象的。作为程序员,我操作的对象类名总是用英文命名的。这使得消息更难理解。
  3. 有些异常信息是格式化字符串,其中消息本身被翻译了,但构建消息的参数没有被翻译;这使得消息更加难以理解,并且有时意味着消息在默认MsgBox中无法正确显示(从右到左的语言可能会是个噩梦)。

根据我的经验,开发人员需要用英语编写他们的异常信息,因此翻译这些信息只会增加双方的工作量,而不会带来太多好处。


0
通常会有很多错误信息,而且它们通常只会偶尔显示出来。因此,有时候翻译它们似乎需要花费太多的精力。

0

这取决于应用程序。如果是一个高度技术化的应用程序,将被懂英语和目标语言的人使用,那么英语错误信息可能没问题。

如果是最终用户会看到的消息,就应该翻译。想象一下,如果您使用的应用程序是由日本开发人员编写的,并且您看到了一条日语错误消息。那对您来说可能毫无帮助 - 您将不知道它说了什么,是否能够采取任何措施。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接