DoJaプロファイルとは
DoJaプロファイルは、
NTTドコモグループが開発した
携帯電話用の
Java実行環境です。このプロファイルは、movaシリーズやFOMAシリーズのフィーチャーフォンに組み込まれており、
Java MEに準拠しています。また、後続世代のStarプロファイルも存在します。一般的なエンドユーザーには「iアプリ」、「iアプリDX」、あるいは「メガiアプリ」として知られていますが、これはDoJaの開発者向け呼称です。
特徴
DoJaプロファイルは、
サン・マイクロシステムズの
Javaプラットフォームの構想の一部であり、CLDC上のプロファイルとして特定されています。
携帯電話の特性として、大画面ディスプレイやマウスを持たず、
CPU性能やメモリ容量が限られていることが挙げられます。このため、DoJaの
Java APIはデスクトップの
Java SEとは大きく異なる設計がなされています。具体的には、
Java MEのCLDC仕様は
Java SEのサブセットであり、マルチスレッド処理や実際の
Javaプログラミングが可能ですが、DoJa 3.5までのバージョンでは浮動小数点数を扱うことができませんでした。
携帯電話でのデータ保存は「スクラッチパッド」という特別な領域で行われ、ネットワーク通信は、イアプリがホストされているサーバとだけ可能です。
実行とパッケージング
DoJaを利用するためには、
Javaクラスファイルを含む
Jar形式でパッケージ化する必要があります。パッケージされたiアプリは、HTTPや
HTTPSプロトコルを通じて
携帯電話に
ダウンロードされて実行されます。また、安全性の観点から、他のアプリとのデータ共有が厳しく制限されています。データのアクセスや共有にはiアプリDX仕様を採用する必要があります。さらに、DoJaで動作するクラスファイルは、通常のコンパイルに加えて事前検証が求められます。
APIの種類
DoJaは、iアプリ基本API、iアプリオプションAPI、iアプリ拡張APIの3種類のAPIを持っており、それぞれの機能規定が設けられています。基本APIは全ての端末で利用可能ですが、オプションおよび拡張APIは特定の機種でのみ実装されています。これによってUI関連も特定のクラス群を用いる必要があります。
バージョンの進化
DoJaは、そのリリースに伴い新機能や改良が加えられています。例えば、DoJa 2.0以降では待受けiアプリ機能やゲーム向けの機能が追加され、DoJa 3.0ではこれらの機能がよりブラッシュアップされています。最近のDoJa 5.1ではOpenGL ESがサポートされ、3D描画や
Bluetooth制御が可能となりました。
歴史と互換性
DoJaの歴史は
2001年の初版から始まり、各種新機能が追加されることで進化してきました。
携帯電話の技術向上もあり、アプリの性能や機能性も向上しています。ただし、他の
携帯電話向け
Java実行環境との直接的な互換性はないため、開発時にはこの点に留意する必要があります。
開発環境
NTTドコモは、開発者向けにDoJa
エミュレータを提供しており、開発は
パーソナルコンピュータ上で行えます。この
エミュレータは、さまざまな開発ツールと連携可能で、柔軟に開発作業を進められます。総じて、DoJaプロファイルは
携帯電話向けのアプリケーション開発に特化した環境といえます。