.NET アプリケーションのローカライズに関する質問がここで何度も尋ねられたことを知っています。
しかし、大規模な .NET アプリケーションをローカライズするためにリソースとサード パーティのリソース編集ツールを使用するアプローチの有効性については疑問があります。
私は以下のアプローチのいずれかにとどまることを考えています:
すべてのソリューション フォームに対して Localizable=True を設定し、サード パーティのリソース エディター (例: Zeta Resource Editor) を使用して、リソースを編集および管理します。短所:
- 私たちのソリューションには最大 100 のフォームがあり、30 の追加言語には 30*100 = 3000 個の新しい resx ファイルがあります!
- 翻訳者とやり取りするための多くの労力: 製品を更新するたびに平文の Excel ファイルを翻訳者に送信し、言語が変更されるたびにプロジェクト リソースを手動で更新する必要があります。
- 翻訳者は製品のリリース後に作業を行う可能性があり、プロジェクトを再コンパイルしないと翻訳者の変更を含めることができないため、言語ファイルの一部 (ほとんど?) は常に古くなっています。
カスタム Dictionary ベースのクラス (GNU GetText など) を使用して、翻訳を含む昔ながらの ini ファイルをロードします。短所: 翻訳者の ini ファイルを編集するためのヘルパー ツールを作成するなど、余分な作業が必要です。利点: 新しい言語バージョンは、製品のリリース後に別の ini ファイルとして公開される場合があります。
残念ながら、両方の方法のパフォーマンスを比較することはできません。
どちらのアプローチが優れていますか? あなたの経験を共有してください!