図解最新テクノロジー 携帯Java
ナツメ社刊
2002/12
ナツメ社より刊行、2002年12月13日より全国の書店/パソコン量販店の書籍売り場などで発売中。
オンライン書店のbk1、アマゾンなどでも取扱中です。
携帯電話にJavaが搭載されたことの意義、どのようなサービスが可能になるか、キャリアごとの共通点と特徴は何か、第3世代携帯電話を含めた今後の展望、といったことを一望できる内容になっています。
テーマは前著(「明解 携帯電話Java」、リックテレコム刊)と似ていますが、ターゲットがやや異なる書物であり、以下の点が異なっています。
1)iアプリの例題を使って、技術がサービスに繋がっていく過程に触れているので、技術者はもちろんのこと、企画担当や一般の方にも「どうやってサービスが実現されていくのか」がわかる
2)直接プログラムの関心がない人でも、キャリアごとの特徴や、今後の展開や期待がわかる → これは前著も同じ
3)携帯電話とJavaにまたがる組み込み分野の技術の関係では、今後の展望でより広い分野(ロボットなどへの応用の可能性など)に触れている
4)NTT DoCoMoの504i系を含めた、2002年10月時点までの新しい情報に触れている
5)ハードウェアによる高速化(ハードウェア・アクセラレーション)について、より詳細に触れている
[著者より]
この書籍は前著「明解 携帯電話Java」と違い、Java言語の解説とiアプリの実例が出ているため、プログラミング本に見えるかもしれません。しかし、内容は技術解説書・入門書であり、初めてこの分野に取り組むエンジニアや企画担当、あるいは知識が混乱して整理しづらいと考えているすべての方々のお役に立つと思います。実例はiアプリにしましたが、3つの通信事業者(NTT
DoCoMo、au、J-PHONE/Vodafone)のサービス内容を整理して、わかりやすく解説しました。
- 例題は占いサービスの一例として、生年月日からご託宣を割り出す内容になっています。
- 非常に単純なものですが、この例を元にサーバとの通信部分を作れば、サーバに問い合わせて結果を照会するプログラムまで辿り着けます。
- ビジネスアプリの基本パターンの一つであり、そういう意味で、入門者には意外と応用がきくのではないかと考えています。
- 88ページにて、コンパイルについての解説があります。ソースコードからクラスファイルが作られ、さらに複数のクラスファイルを一つにまとめたjarファイルが作られる、というものです。iアプリ開発のためにNTT
DoCoMoが無償配布している開発ツールは、この一連の作業を自動化してくれますし、JBuilderなども同様のことが可能です。そのことを前提に、jarファイルを作るのもコンパイラが作る、と解説していますが、これは簡略すぎたかもしれません。実際にはコンパイラ(javacというコマンド)がクラスファイルを作り、jarというコマンドがjarファイルを作っています。開発の詳細を知りたい方は、この2つのコマンドについて、http://java.sun.com/から調べてみるとよいでしょう。
- Java言語の解説が出てきますが、この本を踏み台にして、その後、各キャリアの仕様書や専門書にジャンプする時に便利だろうと考えたからです。
- 携帯電話のJavaならではのAPIなどは、仕様書を直接参照しなければいけません。そういったものを読む際に、どのような観点に立って学んでいくかにも触れました。また、iアプリやMIDPのプログラミング技術書を読む際の参考にもなるでしょう。
- これ1冊で、Javaの入門から、各キャリアの特徴、今後の技術展望まで含んでいるため、一度通読した後でも活用の機会が多いことと思います。
[補足や追加]
執筆は20001年秋にスタートし、ほぼ2002年3月に一度落ち着いて、レイアウトが決まりかけていました。6月に504iなどの新規情報を追加しましたが、レイアウト作業の関係などから大きな追加など行えないまま、刊行まで時間が経過した面があります。そのため、刊行した時点で若干補足したいポイントがあります。以下、専門用語が出てきますが、本書読者への参考情報ですから、わからない場合は、本書に目を通されることをお勧めいたします。
- 本文で触れている北野共生システムプロジェクトの2足歩行ロボットmorph(リアルタイムOSを使う最先端の例として触れた)は、取材が2001年晩秋であり、レイアウトが確定してからは内容に変更を加える余裕があまりなかったため、2002年12月現在ではmorph3という新しい世代に発展しています(本書で触れているのはmorph2にあたる)。その最新情報は、ここで見ることが出来ます。(morphチームの皆さま、掲載が遅くなり、申し訳ありませんでした。)
- NTT DoCoMoの504iS系は、原稿確定後の発表となりました(原稿は2002年10月に確定、2002年11月に504iS発表)。この機種は504iに対して、カメラを搭載した点が新しくなっています。
- 携帯電話Javaにとって、504iSの最大のポイントは、カメラをiアプリから操作できるAPIが追加されたことでしょう。
- ただし、iアプリで撮影した写真は、そのアプリ専用の領域に保存され、iアプリを待ち受け画面設定にして使う際に表示することが主目的となります(迷惑アプリが勝手に保存領域にアクセスしないように配慮されていると言えます)。
- NTT DoCoMoは2002年12月、FOMAの第2世代機種を発表しました。2003年にはPDC(従来のデジタルmova)の505i系を投入、さらに505i相当の機能を持ったFOMAを追って投入、こういう形で2003年秋以降はFOMA中心のラインナップを離陸させていく模様です(その通りにいくかは、ユーザが受け入れるかによりますが)。
- Javaのアプリ保存領域やスクラッチパッドの容量も、通信速度の向上に従って拡大していく可能性があり(現に2002年12月のFOMAでそうなっている)、2003年以降はJavaアプリケーションの環境が向上していくと思われます。
- Java向け簡易データベースを携帯電話の中に持たせ、サーバと自動的に同期をとることが現実化するかもしれません。
- XMLを媒介して住所録の同期をとったり、SVG(XMLベースの画像フォーマット)を使って地図やイラストを動的に表示するJavaアプリケーションが、数年以内に登場してくるかもしれません。
- この方向は、カーナビとの連携を強化する方向でも生きてくる可能性が高いです。ただ、2003年以降、ITS事業がどう変化していくかもよく見る必要がありますね。
- 実際にどういう変化が生じるかは別にしても、アプリケーションサイズの拡大が、開発者にとってサービスを作りやすくするのは事実です。
- MIDP 2.0は2002年9月に仕様が確定しましたが、2002年12月中旬よりメーカが開発するための開発環境が流通し始めました。DoJa-2.0(504i)で追いつかれ、504iSで追い抜かれた部分もあるJ-PHONE、auですが、MIDP
2.0採用の携帯電話(端末)が出始めると、再びMIDPの高機能化が進んでいく可能性も高くなってきました。
- J-PHONEは2003年以降、Vodafoneにブランドイメージを統一していく旨、発表されました。ただし、刊行時点の2002年はまだJ-PHONEの通りがよいため、あえて変更をしていません。
- 第5章で、KDDIの第2世代携帯電話におけるJavaについて、触れています。「KDDIはもうCDMA2000に移行して、第3世代にいってるんだから関係ないんじゃない?」と思われるかもしれませんが、BREW搭載端末に第2世代のものがあった(Panasonicの方位磁針表示端末)ので触れる必要があったこと、第2世代はなくなりつつあるが、まだ完全に消え去っていない(買い替えをしていない人もいるし、プリペイド端末で使われたりする)ことから、収録してあります。
- 第5章でXMLについて少し触れています(225〜226ページ)。簡単に「JavaでXMLを解釈するブラウザを作る方向がある」と書きました。
- 実際にXMLを解釈するには、XMLパーサが必要です(メーカ側で内蔵してくれればうれしいが、現在はそうなっていないので自分で組み込む)。また、XMLは文書の論理構造を示すのが中心であり、表示にはスタイルシートを活用すべきであって、ただ闇雲に無手勝流のタグを導入しまくればいいわけではありません。
- この分野が整備されていくのは、来年以降になるでしょう。SVGの利用などが進めば、必然的に必要になるからです。
- データベースとの連携を考えると、このような方向のソフトウェアは、まさに今後期待されている分野です。
- 折しも、2002年11月末に行われたXML Japan 2002では、携帯電話におけるXMLパーサについての調査発表を、村田・なんば・橋本の3名で行いました。その内容から発展した記事を、2003年1月発売のJavaWorld誌で、なんば氏が発表します。