|
|
|
第14回:Javaとは
|
|
|
|
大和 哲 1968年生まれ東京都出身。88年8月、Oh!X(日本ソフトバンク)にて「我ら電脳遊戯民」を執筆。以来、パソコン誌にて初歩のプログラミング、HTML、CGI、インターネットプロトコルなどの解説記事、インターネット関連のQ&A、ゲーム分析記事などを書く。兼業テクニカルライター。ホームページはこちら。 (イラスト : 高橋哲史) |
|
■ ひとことで言えば、仮想のコンピュータ
Java、正確にはJavaプラットフォームとは、ひとことで言うなら「仮想のコンピュータ」です。
たとえば、みなさんがこのページを見るのに使っているパソコン用のWebブラウザ、Internet ExplorerやNetscape Navigatorにも「Javaアプレット」という小さなプログラムを実行する機能があります。Webページを書くために使われるHTMLで、それだけでは普通は文字と静止した絵とせいぜい音楽を鳴らす程度しかできませんが、このJavaアプレットを使うとマウスやキーボードの動きに反応するアニメーションや、ゲームのような高度な働きをする部品をページに貼り付けることができます。
このJavaアプレットというのはJava言語で書かれた小さなプログラムです。Internet ExplorerやNetscape navigatorの動いているパソコンにはこのJavaプログラムを動かすための仮想のコンピュータがあって、Javaアプレットがページ上にあるとこのJava仮想計算機が動き出してこのJavaプログラムを実行するようになっているのです。
Javaプラットフォームはパソコンだけなく、究極的には内部にコンピュータを載せた機械なら何の上でも動くことを目指して作られています。インターネット上のサーバーや、TV、ビデオなどの家電製品、そして携帯電話で使うことも当然そのうちのひとつです。
現在のJavaは「Java 2」と呼ばれるバージョンで、その中でも3つのエディションがあります。ひとつは銀行や大きな企業の基幹業務に使われる規模の大きい「エンタープライズ・エディション(EE)」、もうひとつはパソコンなどのデスクトップ用「スタンダード・エディション(SE)」です。そしてこれらよりもさらに規模の小さい「マイクロ・エディション(ME)」というものがあります。これは数十キロバイトと少ないメモリ容量で動作する身軽な仮想計算機「KVM」と各種適応分野に応じたクラス・ライブラリ群から成り立っていて、これが小さなコンピュータや、携帯電話のような家庭用の機械に組み込んで使われるのです。
Java2MEの場合、機械ごとに合ったライブラリというものが必要になるのですが、携帯電話用のJavaライブラリは既に試作が完了しているようで、Java関連の展示会などではこのJava搭載携帯電話機を見ることができます。
Javaを搭載した実際の製品としては、携帯電話事業者ではNTTドコモが今年Java対応のiモード携帯電話を発売する予定になっています。また、J-フォングループもJavaプラットフォームとITRONというOSを融合させた「JBlend」を採用した次世代携帯端末を来年中にも発売する予定です。
|
Javaとは、一言でいうなら「仮想計算機」だ。コンピュータや携帯機器などの中に「Javaバーチャルマシン」という仮想の計算機が作られ、これが「Javaプログラム」を読み込んで、実行する
|
■ 携帯電話が対応するとなにができて、なにが便利になるのか
簡単に言えばJavaは(仮想の)計算機です。
Java搭載携帯電話で使えるとどんなことができるようになるか、というと、コンピュータにできるいろいろなことができる、と言えるでしょう。パソコンのように大きなキーボードがあったり大きなメモリが使えたりするわけではありませんし、またセキュリティの問題もあって制限されている機能もありますが、基本的にはハードウエアが対応していて、プログラムさえあればいままでできなかったことがいろいろとできるようになります。
まだまだ製品も出ていなければサービスも始まっていない携帯電話でのJavaでは、具体的なサービスの例を挙げるのは難しいのですが、たとえば、移動体通信機器の展示会でのJava対応iモード携帯電話の参考出品や、あるいはJava OneなどのJava関連のコンベンションで行なわれている携帯電話用Javaのデモでは、アニメーションや携帯電話を使ったゲームのデモがよくされているようです。また、ネットサーフィンや電子メールのチェック、電子商取引、PIM、電子財布といったサービスも利用可能となる、とアナウンスも目にします。
ちなみに、Javaプログラムは電話の中に書き込まれているのではなく、インターネットなどの手段でプログラムを読み込んできて使います。つまり、電話が古くなってもソフト的にはいつも最新の機能が使えるようになるわけですね。
また、Javaを使うメリットとしては、細かいところでは「パケット代が節約できる」などということもあります。たとえば、これまでの携帯電話でのインターネット接続は、画面が切り替わるたびにデータを読むためレスポンスに時間がかかりました。
iモードバンキングなどで利用者番号を入力する場合を考えてみてください。もしユーザーの入力にタイプミスがあったりしても、携帯電話はいちいち番号をサーバーに送り、サーバーも「番号が間違えているのでもう一度入れ直してください」というページのデータを送り返さなければなりませんでした。このような処理を電話内のJavaにまかせるのです。そうすれば、明らかに間違えている、たとえば桁数が違うといったことぐらいは携帯電話内で判断できますから、サーバーとの通信はいらなくなります。これで、サーバーとのデータのやり取りをしなくて済みますので、時間(とパケット代)を節約できるようになるわけです。
なお、Javaのプログラミング環境は一般にも公開されていて、現在でもパソコンさえあればJavaプログラミングをすることができます。携帯電話用のプログラムの作り方などは公開されていないので、まだどうなるかはわかりませんが、もし公開されれば、プログラミングさえできれば、自分の好きなことを携帯電話でするためのプログラムを作ってホームページで公開することもできるようにもなることでしょう。
■ Write once,run anywhere(一度書けばどんな機械でも動く)
さて、Javaのひとつの特長に、「Write Once,Run Anywhere(一度プログラムを作れば、どんな機械の上でも動く)」 ということがあります。
パソコンソフトはWindows用のソフトはiMacでは使えないように、各機械にはそれようのソフトを買わなくてはなりませんが、そういうことはJavaにはないのです。たとえば、Java搭載iモード携帯電話が発売されれば、それがどのメーカーの携帯電話でも、たとえば、NEC製であれ、富士通製であれ、あるいはパナソニック製や三菱製であっても、同じように機能を使うことができるようになるはずです。
携帯電話以外でも、Javaでは各機械の中にあるJavaの仮想計算機自体は基本的には同じように動きます。もちろん、大型のサーバーやパソコンに載っているJava仮想計算機は携帯電話のものよりは大規模ですし、いろいろな違うJava計算機用のパーツとなるソフト(ライブラリ)が違いますから、全てのソフトがどこでも同じように動くわけではありませんが、基本的には同じような規模、同じようなライブラリを持った仮想計算機が使われている機械であれば全く同じように動くはずです。
Java Oneなどの展示会では携帯電話だけでなく、Palm用Java 2MEが配布されていたりもしましたから、いずれはいつも携帯電話で使っているソフトをPalmなどのPDAで遊んだり、あるいはパソコンでも使う、などということもあるかもしれませんね。
■ 関連記事
・ 【WIRELESS JAPAN】NTTドコモ、iモードの発展戦略
・ J-フォン、Java対応端末を来年発売
(大和 哲)
2000/10/04 00:00
|
|
|
|
|