2008-10-10 110 views

回答

1

有些公司會將標準格式的資源文件翻譯爲費用;我認爲這就是大多數大公司這樣做的原因。

我最近here問起一個項目,以支持這一點,我希望更多的保護代碼的可讀的字符串來構建代碼的最佳方式了類似的問題。這不是標準的,但是......通常你會把所有的字符串資源放到一個單獨的文件中,並通過代碼中的ID來引用它們,並且翻譯文件。

見.RC的Windows C++文件,.resx文件爲.NET,不知道對Linux/MAC /其他什麼存在,但我敢肯定有等價物。

+0

謝謝,你知道在哪裏可以找到這些公司嗎? – 2008-10-10 05:03:56

1

我認爲這取決於你想要的語言是多麼接近,這可能取決於項目是什麼擺在首位(職業,愛好等)

在我的業餘愛好的工作,我有很存儲在簡單的外部JSON文件(XML或甚至簡單的INI中)的特定於語言環境的字符串也可以工作,任何可以爲您提供鍵值對的東西都可以。這具有跨平臺,易於編輯的好處,並且(如果需要的話)允許具有知識和決心的任何人將您的應用翻譯成他們選擇的語言。對於開源項目等,這是非常寶貴的。

對於那些你可能不願意翻譯的項目,嵌入式資源可能是一個更安全的選擇,因爲它們對於開發人員來說是相當容易的,但是對於想要翻譯的人來說至少是一個微不足道的障礙。但即使在這種情況下,存儲方法也不需要很複雜。任何給定的文件類型或本地字符串表都可以。

2

本文摘錄爲Joel's Best Software Writing I:http://blogs.msdn.com/ericlippert/archive/2003/10/28/53298.aspx(有多少微軟員工需要更換一個燈泡?),並且在很高的層次上討論了簡單的改變有多大的分歧。如果您認爲MS擁有許多國際化應用程序,並且這是他們用來確保其應用程序保持最新的一千個因素的過程,包括新/修改過的字符串在其他語言中不會錯過。

對於翻譯的需求(面積我有知識一丁點兒的!),我會建議OmniLingua全球。

1

,在我所工作的項目,我們採取了兩種不同的方法來定位,這取決於項目的規模。對於每個開發者「擁有」一個組件的小型項目,開發者有責任維護需要翻譯的內容以及哪些語言的列表。

對於較大的項目,我們已經標記每個字符串用語言前綴。例如,「是」的德語字符串被標記爲「[是]是」。本地化後,字符串被替換爲「Ja」。這樣可以很容易地找到錯過的東西,因爲您可以通過前綴進行搜索。

至於額外的商業來源,我曾在不同的點Net-TranslatorsBMT,後者最近。

1

我強烈建議檢查出西風db resource provider

我管理一個開源項目管理Web應用程序(http://sharpforge.org/p/SharpForge.aspx)並且最初使用了resx文件。這裏是我的問題

  • 我想訪問那些從BLL層強類型的資源。這根本不可能。
  • resx文件也很難維護,添加/刪除/更改資源鍵可能會產生各種問題。
  • 最後,我遇到了很多問題,沒有使用編輯器保存帶有正確字符映射/編碼的文件,這些文件會去掉所有翻譯後的文本。從翻譯器獲取資源進入代碼庫的過程通常會導致文本消失。

我能夠實現數據庫提供程序作爲應用程序的一部分。它附帶一個編輯器,您可以爲翻譯人員提供訪問權限。他們的翻譯直接進入應用程序,無需雙重處理,並在應用程序重新啓動後立即可用。它還具有創建強類型對象以從任何層訪問提供者的功能。

安裝完成後,我只需在getafreelancer上創建了一個翻譯項目,並且能夠在大約2周內爲我的應用程序完成25個翻譯。所有大約$ 50-100美元。

如果您對如何實施它有任何疑問,請聯繫sharpforge forums