i18nは internationalization の略で、アプリやWebサイトを複数の言語・地域向けに対応しやすくする設計や実装のことです。
日本語では「国際化」と呼ばれ、単に文章を翻訳するだけでなく、日付、通貨、数値、住所、敬称、文字数、右から左へ書く言語への対応なども含みます。
まず押さえたいポイント
- i18nは多言語対応しやすい作りにすること
- 実際の翻訳文を入れる作業はlocalization、つまりl10nと呼ばれることが多い
- UI文言をコードに直書きせず、翻訳キーやlocaleファイルで管理する
- 英語を基準文にして各言語へ展開すると運用しやすい場合がある
- AI翻訳を使う場合も、用語集、文体、レビュー手順が必要になる
どんな場面で使うか
たとえば、英語版、日本語版、韓国語版のWebアプリを作る場合、ボタンやエラーメッセージをコード内に直接書いていると、言語追加のたびに実装が散らばります。
i18nを前提にすると、en.json、ja.json のような翻訳ファイルや、user.profile.title のような翻訳キーで文言を管理できます。
この形にしておくと、開発者は画面の構造を保ったまま文言だけを差し替えられます。
AIツールに翻訳を依頼する場合も、対象キー、基準言語、翻訳しない固有名詞、文字数制限、トーンを渡しやすくなります。
よくある誤解
i18nは「Google翻訳やAIで文章を置き換えれば終わり」という話ではありません。
同じ英語の Save でも、文脈によって「保存」「節約」「救う」のように訳が変わります。短いUI文言ほど、画面上の役割やユーザー操作が分からないと誤訳しやすくなります。
また、英語を基準に各言語へ翻訳する方法は管理しやすい一方で、日本語発のサービスではニュアンスが英語化の段階で落ちることもあります。重要な説明文、利用規約、料金表示、医療・法律・金融に近い文言では、人間のレビューを前提にするべきです。
実務で見るポイント
AIにi18n作業を頼むなら、翻訳キーを壊さない、変数プレースホルダーを変えない、HTMLタグを増やさない、未翻訳のキーを一覧化する、といった確認手順をセットにします。
さらに、ブランド名、機能名、専門用語は用語集として渡すと、言語ごとの表記ゆれを減らせます。
Claude Codeで翻訳ファイルを扱うときの考え方は、Claude Codeで覚えておきたいコマンドと翻訳ワークフロー|/compact・/clear・多言語化のコツで具体的に整理しています。