この項目では、ソフトウェアの国際化と地域化について説明しています。社会の国際化については「グローバリゼーション」を、国家間の関係については「国際化社会」を、エンターテイメント作品の地域化については「ローカライゼーション#エンターテインメント」をご覧ください。
国際化と地域化の例。設定を変えることで表示言語が変わる。
情報処理における国際化(こくさいか)と地域化(ちいきか)は、ソフトウェアを開発した環境とは異なる環境、特に外国や異文化に適合させる手段である。 国際化と地域化は、文字通り二つの概念を集合的に捉えた用語である。 かつては、ソフトウェアの地域化や多言語化のために必要に応じて機能的な変更や拡張が行われてきた。しかし、このようなやり方ではソフトウェアの規模拡大や対応する言語が多くなるに従い、開発や保守に多くの時間と費用がかかるため対応が難しくなる。1990年代にプログラミング言語やオペレーティングシステムの国際化対応が標準化されると、ソフトウェアを予め国際化することにより、地域固有データの追加や最小限の変更で地域化が行われるようになった。 「国際化」internationalization はたびたび i18n と略される。読む際には元の internationalization に読み替えたり、i-eighteen-n(アイ エイティーン エヌ)などと呼んだりする。日本においては、「あいいちはちえぬ」「あいじゅうはちえぬ」と呼んだり、「国際化」に読み替えたりすることもある。 i18n は数略語であり、その「18」は、internationalization の先頭の i と語尾の n の間に nternationalizatio の18文字があることに起因する。1970年代か1980年代にDECで作られた用法といわれる[1]。大文字の I は数字の 1 と間違いやすいので一般的には小文字の i が使用される。 「地域化」localization は同様にたびたび L10N と略される。小文字の l は数字の 1 と間違いやすいので一般的には大文字の L が使用される。 国際化と地域化両者の概念は時々、集合的にグローバライゼーションまたはグローバリゼーション(アメリカ英語: globalization、イギリス英語: globalisation、G11N)と呼ばれる[注釈 1]。ただし、この言葉はソフトウェア工学の範囲を越えて社会的な国際化の意味で使われることも多い。 また、母国語対応・母国語支援[3](英語: national language support)あるいは現地語対応(英語: native language support)と呼ぶことも多い。UNIXにおける伝統的な国際化と地域化の手法も、母国語対応と呼ばれる[4]。これは頭文字を取って NLS と略される。 一般的な国際化の対象項目を以下に挙げる。
概要
国際化(アメリカ英語: internationalization、イギリス英語: internationalisation、i18n)
ソフトウェアに機能的な変更や拡張を加えることなく多様な言語や地域に適合できるようにする、ソフトウェア設計の工程。言語や地域に依存しない、仕様の汎用化や共通化を含む。
地域化(アメリカ英語: localization、イギリス英語: localisation、L10N)
特定の言語または地域固有の文化に応じたソフトウェアコンポーネント(構成部品)や機能を実装したり、ユーザー向けに表示されるメッセージ中の文言を翻訳したりすることによって、ソフトウェアを特定の言語や地域に適合させる工程。外来語として「ローカライズ」「ローカライゼーション」とカナ表記されることのほうが多い。
名称
国際化の対象項目
文字セット(標準の文字コードなど)[注釈 2]
文字の方向性(左から右へ、右から左へ、左に向かって上から下へ、他)
文言
フォント[注釈 3]
書式
数値(小数点の文字、桁区切りの文字、区切る桁数など)
日時(年月日の表記の仕方、イスラム暦/グレゴリオ暦/ユダヤ暦/和暦など使用する暦の違い、他)
日時情報の時差
通貨情報
システム側の対応状況
Java
ローカライズ(地域化)に関係するクラスを標準で装備。(java.util.Locale
.NET Framework
System.Globalization.CultureInfoクラスなど。「ロケール」の代わりに「カルチャ」という用語が使われる。
POSIX
国際化機能の標準化
X/Open
XPG国際化モデル
X Window System
X Version 11 Release 5 (X11R5) で国際化機能を実装
ツール
gettext
プログラム中の文字列のローカライズ(地域化)を支援するツール。
Alchemy CATALYST