デザインタイムとランタイムの日本化
 Visual Studioなどの開発製品では,作成されたものもまたソフトウエアとなるので,Visual Studio自体を日本化しただけでは十分ではありません。むしろ,それ以上にVisual Studioを使用して開発されたユーザーのアプリケーションが,きちんと日本化やグローバル化されていることが大切になります。

イラスト

 私たちは,開発者自身が使用する機能のことを開発時の機能という意味で「デザインタイム」,Visual Studioを使って作られたアプリケーションの機能のことを実行時の機能という意味で「ランタイム」として区別しています。

デザインタイムの例
Visual Studioの表示,入力,識別子をユニコード対応に

 日本語に関するデザインタイムとしては,「日本語表示に適切なフォントが選択されているか」「IME(Input Method Editor)によって日本語が入力できるか」「日本語のファイル名は使用できるか」——といった日本語環境に関する要求水準が求められます。これれはいずれも,通常のアプリケーションに求められる日本化の要求と同様なものが多くなります。

 開発製品に特徴的な例としては,プログラミング言語の識別子(Identifier)におけるユニコード(Unicode)のサポートがあります。マイクロソフトが提供している各プログラミング言語では識別子にユニコードをサポートしています。これにより,単にクラス名を日本語で表示できるというだけでなく,様々なウィザードによって自動生成する場合に大きなメリットがあります。プロジェクトを作成すると名前空間の名前はプロジェクト名から自動生成されます。識別子にユニコードをサポートしていれば,名前空間の名前に日本語が使用されてもコンパイル・エラーにならないことでプロジェクト名に日本語が使えるようになります。またデータベースからウィザードでコードを自動生成する場合にも,テーブル名やフィールド名からクラス名やプロパティ名が自動生成されるので,「Table1」や「Field1」とならないようにするためにも識別子でユニコードがサポートされている必要があります。

 しかし,いくら識別子がユニコードをサポートしているといっても,普通にクラスを作成する際にいつも「クラス1」というようにローカル言語を使用してしまうと,複数の国に開発チームがある場合や,海外にソフトウエアの開発を発注した場合などに困ります。そこで,Visual Studio開発チームでは,ユニコードをサポートしつつVisual Studioが既定で自動生成するファイル名やプロジェクト名に関しては英語にするというルールを作っています。このようにして日本化とグローバル化のバランスをとっています。

ランタイムの例
和暦を表示できるようにする

 Wordにとっての「文章」のように,Visual Studioにとっての「ランタイム」は,ソフトウエアを作成するための固有の概念と言ってもよいかもしれません。文字列を操作するようなメソッドなどの基本的な部分からコントロール上でのIMEの制御やアプリケーションの配信にいたるまで広範囲にわたる機能がランタイムには影響します。

 非常に多くの機能の中から日本化の例をあげるとしたら,カレンダ・コントロールにおける和暦のサポートが分かりやすいでしょう。もちろん,WindowsフォームもWebフォームもきちんと和暦をサポートしていますが,もしカレンダ・コントロールが和暦をサポートしていなかったら,和暦を表示するためにカレンダ・コントロールが利用できないことになります。この例だけでなく,特にランタイムに関しては,日本文化に対応していないと,その機能自体が利用できなくなるケースがあるので,仕様を決めるときは慎重に検討する必要があります。

 グローバル化の例としてはWebアプリケーションの配置があります。皆様ご存知の通り,マイクロソフトの日本語ホームページのURLはhttp://www.microsoft.com/Japan/です。このように日本語のページも英語環境のサーバーにある,逆に英語のページが日本語サーバーにあるといった形態も多いでしょう。このような配置が可能となるように,ASP.NETでは,システムの言語設定によらず,どんな言語のページでも正しく動作するようになっています。そのような配置をした場合でも,和暦表示のようにカルチャーの設定によって,日本向けの機能が利用できます。このような設計にすることで,日本化とグローバル化を両立します。

*    *    *

 皆様が,日本化/グローバル化という視点で考える機会は少ないと思いますが,これを機会に一度,「日本の開発者はもっと楽にソフトウエアを開発できるようにならないか」ということを考えてみるのも面白いのではないでしょうか?




◆会社紹介◆
マイクロソフト プロダクト ディベロップメント リミテッド
マイクロソフト プロダクト ディベロップメント リミテッド」は,日本のマイクロソフトの中で研究開発を担当する会社。日本のマイクロソフトの組織は,2つの会社で成り立っており,ほかにマーケティング,製品の流通,サポート業務を担当している「マイクロソフト株式会社」がある。