2012-04-13 186 views
0

我正在爲iPhone開發一款新應用程序,該應用程序必須支持兩種語言:法語和佛蘭芒語。即時語言翻譯器

如果我將實現我的數據庫並在兩種語言中存儲相同的數據,那將是數據冗餘問題,這不是數據庫的目標。對?

因此,我想到一個即時翻譯器,例如,數據庫上的默認語言和數據都是法語的,如果用戶選擇Flamand語言,則從數據庫中檢索的所有數據在向用戶顯示之前在Flamand中翻譯。

這是一個好方法,如果是的話,iOS SDK上有翻譯嗎?這是最佳解決方案嗎?

等待您的建議。提前Thanx。

+0

什麼是「Frensh」? – Sparky 2012-04-13 17:47:15

+0

對不起,我的意思是法語,我的壞:) – Luca 2012-04-13 18:12:43

回答

3

爲了增加Dr.Kameleon的答案,我建議你兩種語言存儲在數據庫中。兩種語言的相同內容是不同的內容。但我也建議你有一個適當的,手工翻譯,並不使用任何專業級應用程序的自動翻譯。

+0

嗯,我完全和你在一起。當然,專業級的應用程序絕不應該基於自動翻譯的內容;除非你想要一個幾乎糟糕的用戶體驗......(更不用說大多數自動翻譯器不能以相同的準確性得到所有的對:**例如**英語 - 法語翻譯對我來說工作起來更好比如,我們說英語 - >我的母語(結果可能聽起來很荒謬)) – 2012-04-13 18:41:17

3

爲什麼你不嘗試一些服務,如谷歌翻譯與API公開可用的API?

提示:我不認爲谷歌的服務仍然對公衆開放(顯然是因爲廣泛的濫用,但我認爲AltaVista的有類似的替代)


更新:

沒有(個人)進行了測試:

和示例腳本訪問的Altavista的Babelfish平臺翻譯服務:

http://code.activestate.com/recipes/64937-babelizer-api-for-simple-access-to-babelfishaltavi/

+0

我真的很好奇爲什麼這個答案已經downvoted ...:/ – 2012-04-13 18:27:39

+0

沒關係,我已upvoted它,thanx您的相關回復朋友:) – Luca 2012-04-13 18:55:50

+0

@Malek你歡迎,我的朋友! – 2012-04-13 19:00:34

2

這取決於你在優化什麼。兩次存儲信息並不像它剛開始時那樣糟糕。例如,在很多情況下,爲了提高計算效率而在數據庫中提供冗餘信息是值得的,這可能就是其中之一。

  • 以這兩種語言存儲數據的主要成本是......好吧,你用兩種語言存儲數據。這意味着您將需要兩倍的空間來存儲文本塊。如果你有足夠的文本存儲空間實際上是你的問題,那顯然是一個問題。如果你不這樣做,那真的不是。

另一方面,這兩種方式都有一些好處。

  • 準確性。自動翻譯人員不會像提供高質量的翻譯一樣合理地勝任人力翻譯工作。當然,如果你不僱用人工翻譯,並且只依賴機器翻譯,那麼這不是一個問題。

  • 速度。自動翻譯對於大型文檔的處理時間並不是完全無關緊要的。花在翻譯上的CPU週期是沒有花在其他事情上的週期,並且因爲這些週期必須在請求和響應之間花費,所以無論如何,它都會使你的延遲變得更糟。如果你有足夠的CPU週期,而你推出的文本塊相對較小,那麼問​​題就更小了。

  • 安全性和可靠性。如果您打算使用外部服務來爲您運行這些翻譯,突然您的服務依賴於該服務的運行,並且任何時候任何時候出門在外都會打開一個或兩個潛在安全漏洞(多麼糟糕這些漏洞取決於您如何做,但他們會在那裏。)或者,如果您打算在內部運行翻譯,則必須保持翻譯服務正常運行,這可能不涉及安全問題,但會涉及額外的維護。

所以......雖然它可能是你的情況是一個在那裏你會想要將它保存在只用一種語言(特別是如果你有很多文本的整體來處理的,它在小型出來大塊,你不在乎所有的這麼多關於你的說Flamand的用戶的用戶體驗),它也很可能不是。