プログラム内の音声言語文字列を最新の状態に保つにはどうすればよいですか? 安価な方法はありますか?時間の経過とともに変換を行う人をどこで見つけることができますか?
5 に答える
これは Joel の Best Software Writing I に抜粋されました: http://blogs.msdn.com/ericlippert/archive/2003/10/28/53298.aspx (How many Microsoft employees take to change a lightbulb?)単純な変更がどのように大きな影響を与えるかについて、大まかなレベルで説明します。MS には多くの国際化されたアプリケーションがあり、これは、新しい文字列や変更された文字列など、他の言語で見逃されないように、アプリを最新の状態に保つために使用するプロセスです。
翻訳が必要な場合 (私が少し知識がある分野です!)、OmniLingua Worldwide をお勧めします。
私が携わったプロジェクトでは、プロジェクトの規模に応じて、ローカリゼーションに対して 2 つの異なるアプローチを取りました。各開発者がコンポーネントを「所有」する小規模なプロジェクトの場合、何をどの言語に翻訳する必要があるかのリストを維持するのは開発者の責任です。
大規模なプロジェクトの場合、各文字列に言語プレフィックスをタグ付けしました。たとえば、"Yes" を表すドイツ語の文字列は "[de] Yes" とマークされます。ローカライズ後、文字列は「Ja」に置き換えられます。これにより、プレフィックスで検索できるため、見逃していたものを簡単に見つけることができます。
追加の商用ソースについては、 Net-TranslatorsとBMTをさまざまな時点で使用してきました。後者は最近のものです。
それは、言語をどれだけアクセシブルにしたいかによると思います。これはおそらく、そもそもプロジェクトが何であるか (プロ、趣味など) に大きく依存します。
私の趣味の仕事では、ロケール固有の文字列を単純な外部 JSON ファイルに格納しています (XML や単純な INI でさえも同様に機能し、キーと値のペアを提供できるものであれば何でも構いません)。これには、クロスプラットフォームであり、編集が容易であるという利点があり、(必要に応じて) 知識と決意を持っている人なら誰でも、アプリを選択した言語に翻訳できます。オープンソース プロジェクトなどでは、これは非常に貴重です。
むやみに翻訳されたくないプロジェクトの場合、埋め込みリソースは、開発者にとってかなり簡単に交換できるという点で、おそらくより安全な賭けですが、翻訳者になる予定の人には少なくとも些細な障害を与えます。ただし、この場合でも、保存方法は複雑である必要はありません。指定されたファイル タイプまたはネイティブ文字列テーブルのいずれかが実行されます。
west wind db resource providerを確認することを強くお勧めします。
私はオープン ソースのプロジェクト管理 Web アプリケーション ( http://sharpforge.org/p/SharpForge.aspx ) を管理しており、最初は resx ファイルを使用していました。これが私が抱えていた問題です
- BLL レイヤーから厳密に型指定されたリソースにアクセスしたかったのです。それは単に不可能でした。
- resx ファイルの保守も非常に難しく、リソース キーの追加/削除/変更によってあらゆる種類の問題が発生する可能性があります。
- 最後に、翻訳されたテキストをすべて削除する正しい文字マップ/エンコーディングを備えたエディターを使用してファイルを保存しないと、大きな問題が発生しました。トランスレータからコード リポジトリにリソースを取得するプロセスでは、多くの場合、テキストが改ざんされました。
アプリケーションの一部として db プロバイダーを実装することができました。翻訳者にアクセスを許可できるエディタが付属しています。それらの翻訳は、二重処理なしでアプリに直接送られ、アプリケーションを再起動するとすぐに利用できます。また、厳密に型指定されたオブジェクトを作成して、任意のレイヤーからプロバイダーにアクセスする機能も備えています。
これをインストールしたら、getafreelancerで翻訳プロジェクトを作成するだけで、約 2 週間以内にアプリケーションの 25 件の翻訳を完了することができました。それぞれ約 50 ドルから 100 ドルです。
実装方法について質問がある場合は、 sharpforge フォーラムに連絡してください。
標準形式のリソース ファイルを有料で翻訳する会社もあります。大企業のほとんどがそうしていると思います。
私は最近、これをサポートするためにプロジェクトでコードを構造化する最良の方法について、ここで同様の質問をしました。ただし、これは標準ではありません... 通常、すべての文字列リソースを別のファイルに入れ、コード内で ID で参照し、ファイルを翻訳します。
Windows C++ の .rc ファイル、.NET の .resx ファイルを参照してください。Linux/Mac/その他に何が存在するかはわかりませんが、同等のものがあると確信しています。