1

您如何使程序中的口语字符串保持最新?有便宜的方法吗?随着时间的推移,您在哪里可以找到进行转换的人?

4

5 回答 5

2

这摘自 Joel 的最佳软件写作 I: http: //blogs.msdn.com/ericlippert/archive/2003/10/28/53298.aspx(换一个灯泡需要多少微软员工?),以及它在高层次上讨论了简单的更改如何产生巨大的影响。如果您认为 MS 有许多国际化的应用程序,这是他们用来确保他们的应用程序与一千个因素保持最新的过程,包括不会错过其他语言中的新/修改的字符串。

对于翻译需求(我对这个领域有一点了解!),我会推荐 OmniLingua Worldwide。

于 2008-10-10T05:21:35.833 回答
1

有些公司会翻译标准格式的资源文件以收取费用;我认为这就是大多数大公司的做法。

我最近在这里问了一个类似的问题,关于在项目中构造代码以支持这一点的最佳方法,我还希望在代码中保留可读的字符串。不过,这不是标准的……通常您会将所有字符串资源放入一个单独的文件中,并在代码中通过 ID 引用它们,然后翻译文件。

请参阅适用于 Windows C++ 的 .rc 文件、适用于 .NET 的 .resx 文件,不确定 Linux/Mac/其他存在什么,但我确信有等价物。

于 2008-10-10T05:02:16.950 回答
1

我认为这取决于您希望语言的可访问性,这可能在很大程度上取决于项目首先是什么(专业、爱好等)

在我的业余工作中,我将特定于语言环境的字符串存储在一个简单的外部 JSON 文件中(XML 甚至一个简单的 INI 也可以工作,任何可以为您提供键值对的东西)。这具有跨平台、易于编辑的优点,并且(如果需要)允许任何有知识和决心的人将您的应用程序翻译成他们选择的语言。对于开源项目等来说,这可能是无价的。

对于您可能不想随意翻译的项目,嵌入式资源可能是一个更安全的选择,因为开发人员可以相当容易地更换它们,但至少给准翻译人员提供了一个微不足道的障碍。但是,即使在这种情况下,存储方法也不需要复杂。任何给定的文件类型或本机字符串表都可以。

于 2008-10-10T05:16:40.337 回答
1

在我参与的项目中,我们根据项目的规模采取了两种不同的本地化方法。对于每个开发人员“拥有”一个组件的较小项目,开发人员有责任维护需要翻译的内容和翻译成哪种语言的列表。

对于较大的项目,我们用语言前缀标记了每个字符串。例如,“Yes”的德语字符串被标记为“[de] Yes”。本地化后,字符串被替换为“Ja”。这使您可以轻松找到遗漏的内容,因为您可以通过前缀进行搜索。

至于其他商业资源,我曾在多个方面与Net-TranslatorsBMT合作过,后者是最近的一次。

于 2008-10-10T05:27:46.930 回答
1

我强烈建议查看西风数据库资源提供程序

我管理一个开源项目管理 Web 应用程序 ( http://sharpforge.org/p/SharpForge.aspx ),最初使用的是 resx 文件。这是我遇到的问题

  • 我想访问那些从 BLL 层强类型化的资源。这简直是​​不可能的。
  • resx 文件也很难维护,添加/删除/更改资源键会产生各种问题。
  • 最后,我遇到了巨大的问题,没有使用具有正确字符映射/编码的编辑器保存文件,这将删除所有翻译的文本。从翻译器获取资源到代码存储库的过程通常会导致对文本的修改。

我能够将数据库提供程序作为应用程序的一部分来实现。它带有一个编辑器,您可以让翻译人员访问它。他们的翻译直接进入应用程序,无需双重处理,并且在应用程序重新启动后立即可用。它还具有创建强类型对象以从任何层访问提供者的能力。

安装后,我在getafreelancer上创建了一个翻译项目,并在大约 2 周内为我的应用程序完成了 25 次翻译。全部价格约为 50-100 美元。

如果您对如何实施它有任何疑问,请联系Sharpforge 论坛。

于 2008-11-21T07:07:09.817 回答