第3回 ファーストiアプリケーション

この原稿が載る,その日に待望の503iが発売になる。何はともあれめでたい。ただ,発売間近だというのに原稿を書いている今日も,まだ正式なクラスライブラリは発表になっていない。大丈夫なのだろうか? 少なくとも,この連載は大丈夫じゃない。

【国内記事】 2001年1月25日 更新

 仕方ないので,今回は「初めてのiモードアプリケーション」と題した,503iでも動くだろう(多分,動くに違いない)アプリケーションを題材に,iアプリの原型を紹介する。

マイファーストiアプリ

 この連載はプログラムを作るのは初めて,という読者も対象にしていくつもりだが,プログラミング言語で書かれたテキストというのは,初めて見る人にとって「オゾマシイ」とか「オドロオドロシイ」というような感想を抱かせるようなものだと思う。なぜかといえばワケが分からないからだが,筆者とて昔はJavaなんぞ見ても,ワケが分からなかったのだから,スタートは誰も同じなのだ。

 少し慣れてくればJavaで書かれたソースコードも,HTMLやPerlほどワケが分からないものでもない,ということが分かってくると思う。まずは最初からコードを見てみよう。

 リスト1が「ファーストiアプリケーション(MyFirstiApp)」と題した,503iで動くかもしれないアプリケーションだ(リストを表示する)。

 画面1がMyFirstiAppを,第1回で紹介したフリーのiモードJavaエミュレータを使ってコンパイル,JDK付属のAppletViewerというツールを使ってWindows上で動かしている様子だ。

MyFirstiAppを,第1回で紹介した福野泰介氏が作成したiモードJavaエミュレータ「iEmulator」を使ってコンパイルし,動かしている様子。2行のメッセージとボタンを表示する。ボタンを押すか,何かキーを押せば,MyFirstiAppは終了する

 MyFirstiAppは,画面に2行のメッセージとボタンを1つ出し,何かキーを押すかボタンを押すと終わるという動作をする。「なんだ,それだけかバカバカしい」などと思ってはいけない。バリバリのパワフルプログラマー(筆者のことではない)という人でも,生まれて初めて作ったアプリケーションなんて,大体がこんなものだ。

 それに,単純ということには,もう1つ別のメリットがある。余計な付属物がないからiモードJavaの骨格が分かりやすいってことだ。

 とにかく,分からなくてもいいから,ジーっとリスト1を凝視して欲しい。まず見えてくるのは括弧じゃないかと思う。{と},(と)の数が同じだ,と気づいた人は偉い。iモードJavaプログラマの達人になる素質がある人だ。

 大括弧{}が1つのセクションを表している。となると,もっとも大きな,全部を囲むセクションは次のような行から始まっていることが分かると思う。


public class MyFirstiApp extends IApplication.... {


 public云々とある行が,そのセクションの名前や属性を表すタイトルみたいなものだ。このセクションが「公共のクラスだ」(public class)といっていることは,何となく分かるんじゃないだろうか。その次のMyFirstiAppがいうまでもなく,このリスト1全体を括っているセクションのタイトルだ。

 名前の後ろextendsというのは「拡張した」という意味。そう,この公共のクラスはIApplicationを拡張しているのだ。その後ろのimplementsも重要なのだが,今回はややこしい説明に入るのはやめておこう。

 ポイントは「iアプリは,必ずIApplicationを拡張した公共のクラスじゃなきゃならない」ってこと。普通,iアプリケーションは次のような形を取る。


---------------
public class 名前 extends IApplication {
 public void start() {
    ここからiアプリが始まる
    ..
    いろいろやりたいことを書く
    あれもしたい,これもしたい....
  }
 }
---------------


 なんだか簡単だが,これがiアプリの骨格だと理解して欲しい。この骨格に自分が,やりたいことを付け加えればオリジナルのiアプリが完成するわけだ。簡単でしょ?

 さて,公式なiモードのライブラリが出ていることを期待しつつ,次回はコンパイルやWebでの公開の仕方を説明するつもりだ。

 アマチュアプログラマーに朗報! 「ギガコード」や「ギガチョイス」などiモード向けコンテンツに対して様々なサービスを提供しているギガフロップスが,iアプリのアーカイブサービスを行う。登録されたiアプリは,ギガフロップスがエミュレータや実機によって動作チェックを行ってくれる。

▼ギガフロップス,iモード用Javaアプリのアーカイブサイト開設

関連記事
▼ドコモ,Java搭載iモード端末503i発表──1月26日発売
▼iモード対応Javaを作るのに必要なものは?──NTTドコモ,仕様をついに公開
▼制限きついiモード用Java──ドコモ503iでできること,できないこと
▼Java搭載iモードではこんなことができる!──ドワンゴ「サムライ ロマネスク」
▼iモードのJava端末,当初はロースペックで登場

[米田 聡,ITmedia]

Copyright © ITmedia, Inc. All Rights Reserved.



モバイルショップ

最新スペック搭載ゲームパソコン
高性能でゲームが快適なのは
ドスパラゲームパソコンガレリア!

最新CPU搭載パソコンはドスパラで!!
第3世代インテルCoreプロセッサー搭載PC ドスパラはスピード出荷でお届けします!!