Java ME 8のおもな機能 ORACLE.COM/JAVAMAGAZINE ///////////////////////////// MARCH/APRIL 2014 Java ME 8 Platform Overview Application (Examples) Logistics Additional APIs (Examples) Messaging Wireless Communication Protocols and Data Conversion Location Web Services Sensors On-Device I/O Access Device I/O API Java VM Smart Metering eHealth Generic Connection Framework GCF 8 Security and Management Additional Optional JSRs Application Platform Java ME Embedded Profile (MEEP) 8 (JSR 361) Telemetry Additional Optional APIs Vertical Specific APIs Security and Trust Services SATSA Java ME Connected Limited Device Configuration (CLDC) 8 (JSR 360) 図1 MEの言語やプラットフォーム 全体に精通した、900万人を超 えるJava開発者コミュニティ があります。その全員が、多く の人が予測する第3のIT革命 に備え、それを促進しようとし ています。図1に、Java ME 8プ ラットフォームの概要を示しま す。以降では、Java ME 8のおも な新機能について詳しく見て いきます。 Connected Limited Device Configuration 8 Java ME 8構成の基礎となる Connected Limited Device JAVA TECH なしに多くの障壁もあるので す。組込みデバイス分野のテク ノロジーが広く普及、浸透する と同時に、ハードウェア・アー キテクチャ、デバイス、 システ ム・ソフトウェア、インフラスト ラクチャの細分化も進んでい ます。そのため、 プログラミン グ言語、 ソフトウェア・プラット フォーム、ツール、テスト、デプ ロイ、 スケーラビリティ、開発 者コミュニティの観点からの 統合的な開発標準が強く求め られています。現在、組込み分 野でハードウェアとソフトウェ アが細分化されていることか ら、特定のハードウェア・プラッ トフォームについて開発ス タック (ランタイム、 ツール、言 語、API、 プロトコル、接続性な ど)の全貌を明らかにしなけ ればならないケースも多く発 生しています。 Java ME 8は、柔軟性とス ケーラビリティに優れた、組込 み分野専用の開発/デプロイ 環境です。言語、標準、 プラッ トフォーム、ツール、セキュリ ティ、 スケーラビリティなどが 統合されています。すでにJava Configuration 8(CLDC 8)は、 Java SE 8の厳密な拡張サブ セットです。CLDC 1.1.1をさら に進化させながら、仮想マシン (VM)、Java言語、 コアAPIライ ブラリについてJava SE 8との 整合を図っています。CLDC 8 は、ツールとプログラミング・ モデルの観点でJava ME 8と Java SE 8の整合をとり、同時 に組込み分野を対象とした多 数の新機能を提供し、下位バ イナリ互換性も維持していま す。CLDC 8は、 アサーション、 ジェネリクス、 アノテーション などの新しいJava言語機能に ABOUT US 米 国ネバダ州ラスベガスで 開催された2014年コン シューマ・エレクトロニクス・ ショーのメイン・テーマはウェ アラブル・コンピューティング でした。睡眠状態を監視する STEVE MELOAN、 幼児服、 スポーツ対応機能強 TERRENCE BARR 化型リストバンド、加速度計付 Steve Meloan: きのペット用首輪などの多彩 元 C/UNIX ソフ なハードウェア・デバイスや、 トウェア開発者。 ネット接続機能を持つ自動 Wired、Rolling 車、 スマート・アプライアンス、 Stone、Playboy、 医療センサー、 スマート・メー SF Weekly、San ター、産業用制御機器などの Francisco Examiner 主力テクノロジーの中に、多 などの各誌に Web 岐にわたる組込み/インター やインターネットに ネット対応型計算デバイスが 関する記事を執筆し 搭載されています。 この状況 ている。 はInternet of Thingsと呼ばれ Terrence Barr:オ ることも多くなっています。そ ラクルの Senior のようなインターネット対応 Technologist 兼 型のモノ (Things)は今後10年 Product Manager。 で数十億台に達し、多種多様 Internet of Things なハードウェア仕様やメモリ および組込みテクノ 仕様が利用されると各所で推 ロジーを担当。 測されています。 しかし、良い話は常に、ある Java 8 種の困難から始まります。急成 Is Here 長している組込みデバイス分 BARRの写真: 野の未来や可能性には、例外 TON HENDRIKS COMMUNITY Java ME 8とInternet of Things JAVA IN ACTION //embedded / blog 56 ORACLE.COM/JAVAMAGAZINE ///////////////////////////// MARCH/APRIL 2014 Micro Edition Embedded Profile 8 CLDC 8は、 コア・ランタイム、 コア言 語機能、 コアAPIの観点からのJava 基本プラットフォームですが、組込 みアプリケーション・プラットフォー ムを完全に定義しているわけではあ りません。Micro Edition Embedded Profile 8(MEEP 8)はCLDC 8の上層 に位置し、 アプリケーション・モデル およびコンテナに加え、 システムへ のアプリケーションのプロビジョニ ング、複数のアプリケーション間で のコード共有、 システムのライフサ イクル期間におけるソフトウェア・コ ンポーネント更新(新機能の追加、 更新プログラムやバグ修正プログラ ムのデプロイなど)を行うための手 段を提供します。 MEEP 8では、 アプリケーション内 の個々の機能コンポーネント (セン サーへのインタフェース、データ・ フィルタ・ロジック、サーバーへの 接続など)をパーティション化し、モ ジュール化することもできます。 こ の方法により、処理の粒度がアプリ ケーション・レベルではなくサービ COMMUNITY ス・レベルで設定されます。そのた め、組込みアプリケーションのプロ ビジョニング、管理、更新が、 より簡 潔で洗練された処理になります。 同時に、 プロファイル・セットを使 用したライトサイジングによって、各 アプリケーションのユースケースに 必要となるメモリ・フットプリントを 高度にカスタマイズできます。 アプ リケーションの中には、特定の機能 セットを必要としないか、 または利 用しないものもあります。その場合 に、適切なプロファイル・セットを選 択することで、不要な機能やメモリ を利用しないで済みます。後でユー スケースの機能が拡張された場合 は、オプション・パッケージ(テクノロ ジー固有API)を追加して、 シームレ スにスケーリングできます。 メモリ・フットプリントの最小化と アプリケーション機能のモジュール 化の両方に関連して、MEEP 8では 共有ライブラリ (LIBlets) も提供され ます。 この機能により、複数のアプリ ケーションで共通のライブラリ・コー ドを利用できます。読取り専用の コードが、 メモリ内で個別のアプリ ケーション領域ではなく、1箇所の共 有領域に配置されます。 さらなるメ リットとして、そのような共有ライブ ラリ領域を1回更新/変更するだけ で、その領域にアクセスするすべて のアプリケーションに更新/変更を 適用できます。 同時に、組込みデバイス上で実 行されるアプリケーションでコラボ レーションや通信を最大限行えるよ うに、MEEP 8では、非同期型イベン JAVA IN ACTION つInternet of Things内で数百万 台、あるいは数十億台のデバイス が稼働するようになれば、セキュリ ティの重要性はますます高まりま す。そのため、GCF 8ではTransport Layer Security(TLS)1.2、Datagram Transport Layer Security(DTLS)1.2 によるセキュアなデータグラム接続 などの最新のセキュリティ標準も提 供し、高水準のネットワーク暗号化 と認証を実現します。 JAVA TECH も対応します。Java ME 8は、Java SE に求められる柔軟性を達成するた とJava MEとの本格的な統合を行っ めに、携帯電話回線、Wi-Fi、有線な た初めてのバージョンです。今後の ど、多岐にわたる接続方法や接続要 リリースでは、両プラットフォームの 件が提示されます(1つのデバイス 整合性がよりいっそう高められる計 で複数の接続オプションに対応する 画です。 ことも多くあります)。 Java開発者は、現在のスキルを Generic Connection Framework 8 使って、急成長中の組込みデバイス (GCF 8)のAccessPoint APIは、各 分野向けアプリケーションをより簡単 ユースケース、利用可能な接続オプ に構築し始めることができます。使い ション、ローミング仕様/コスト、デー 慣れた同じプラットフォーム、言語、 タ送信要件に応じた、粒度の細かい プログラミング・モデル、ツールを利 最適化された接続制御を実現しま 用できるのです。そうすることで、製 す。 品化までの時間を大幅に短縮し、 ク また、数十億台のインターネット ロス・プラットフォームの互換性や組 対応型組込みデバイスの時代が来 込みデバイスのスケーラビリティも ると予想される中で、IPアドレスによ 確保できます。適切な言 る検索や相互通信がで 語およびAPIのサブセット きることが不可欠です。 組込み を選択するように気を配 GCF 8では、IPv6の完全 常時900万人を ることで、CLDC 8対応の サポートにより、IPv4のア 超えるJava開 小型デバイスからJava SE ドレス枯渇という積年の 8対応の大規模なデバイ 課題に立ち向かいます。 発者がすでに スに至るまで、広範囲の また、IPマルチキャスト この分野に携 ハードウェア上で変更を もサポートされます。 こ わっている中 加えずに実行できるよう のサポートにより、ネット で、 Java ME 8リ なアプリケーションやライ ワークへのデバイスのイ リースは幅広 ブラリを作成できます。 ンストール、他のデバイ い新しいキャリ スの検出や接続に加え て、完全に暗号化された Generic Connection アの可能性を セキュアなサーバー・ソ Framework 8 開く のみなら ケット接続を利用する際 一般的に、デスクトップ ず、 急成長する にサーバーとして動作さ やサーバーの世界では、 組込み業界全 せることも可能になりま 単純で安定したイーサ す。 ネット・パイプがアプリ 体がさらに発 現在のワイヤレス接 ケーションやシステムに 展するきっかけ 続環境ではセキュリティ 組み込まれます。 しかし、 にもなります。 が重要です。 さらに、将 組込み分野では多くの場 来ネット接続機能を持 合、特殊なユースケース ABOUT US //embedded / blog 57 Security privileges requested by software components are governed by device and client policies Device App 1 Client A App 3 App 2 Device Policies Client B Client Policies Code Privileges 図2 トベース・メッセージング(パブリッ シュ・サブスクライブ・メカニズムに 類似) と、同期型MIDlet間通信(略称 IMC、UNIXのパイプに類似)の両機 能が提供されます。 MEEP 8は、粒度の細かい洗練さ れたセキュリティ・モデルにも対応 し、認証と認可のためにユースケー ス固有のセキュリティ・ポリシーを 利用できます(図2)。サンドボック ス内で実行することで、 コードのセ キュアなロード、検証、データの型付 けが保証され、 リソースやデータへ のアクセス権限を柔軟に設定でき ます。個々のソフトウェア・コンポー ネントは特定のクライアントに関連 付けられ、許可された権限を継承し ます。 さらに、 アクセス・イベントが 発生するたびに権限の確認が行わ れます。 Device Access API 過去のJava MEリリースですでに導 入されているDevice Access API for Java ME 8は、 プラットフォーム非依 存の方法で組込みJavaアプリケー ションから周辺機器(ボタン、 スイッ チ、センサー、LED、液晶画面、オー ディオなど)にアクセスするための 重要な機能です。Java ME 8では対 応デバイスの種類が増加し、新しい 機能も追加されました。 また、遅延 バインディング機能によって、APIを 変更せずに新しい種類の周辺機器 を追加できます。 Java ME SDK 8 Java ME SDK 8は、組込み開発専用 のフル機能搭載型ツールセットで す。各種デバイスのエミュレート環 境やシミュレート環境が含まれて いるため、 アプリケーションをハー ドウェアと並行して開発でき、製品 化までの時間が大幅に短縮されま す。開発者はシミュレート、テスト、デ バッグをエミュレート・モードで実行 できます。その後、実際のハードウェ ア・デバイスや周辺機器の準備が 整った際には、 より自信を持ってア プリケーションの最終テストを実施 できます。 Java ME SDK 8では、セキュリティ、 ORACLE.COM/JAVAMAGAZINE ///////////////////////////// MARCH/APRIL 2014 まとめ かつて携帯電話分野において、現在 の組込みテクノロジー分野と同様 に、多くの方面でハードウェアの細 分化が見られた時代がありました。 最終的にスマートフォンやモバイ ル・アプリケーションの急成長を生 み出した要因の1つは、標準開発プ ラットフォーム、言語、ツールが確立 されたことです。 Java ME 8は現在、インターネッ ト対応型組込みデバイス、および Internet of Things向けに、 まさに そのような包括的な専用プラット フォームを提供しています。 さらに、 常時900万人を超えるJava開発者 がすでにこの分野に携わっている 中で、 このリリースは幅広い新しい キャリアの可能性を開くのみなら ず、急成長する組込み業界全体が さらに発展するきっかけにもなりま す。 だからこそ、今始めるべきです。 現在、Oracle Java ME Embedded 8 (Java ME 8標準のオラクルによ る実装)が提供されています。対 応プラットフォームは、Raspberry Pi Model B(ARM11)および Qualcomm IoE platform(ARM9) で す。 また、Oracle Java ME SDK 8も提 供されています。 このSDKは、Java ME 8ベースのアプリケーションの 開発を支援します。Windows 7向 けのエミュレート・ランタイムのほ か、前述のRaspberry Piデバイスや STMicroelectronicsデバイスにも対 応します。 Oracle Java ME Embedded 8と Oracle Java ME SDK 8のリリースは、 評価および開発の目的で、Oracle Technology Network開発者ライセ ンスの下で無償で入手できます。</ article> COMMUNITY メモリ、ネットワークの監視ツール に加えて、Developer Agentによっ て、通常の組込み開発環境にはない 高水準のアクセスや制御が可能で す。たとえば、デバイスのリセット、画 面のないデバイス上のファイル・シ ステムへのアクセス、設定変更など を、すべてJava ME SDK 8から実施 できます。同時に、NetBeansプラグ インにより、 フル機能搭載型のIDEを Java ME SDKと統合できます。その ため、使い慣れた統合開発環境を Java ME、Java SE、Java EEにわたっ て利用でき、EclipseのJava SE 8、 Java ME 8、Java ME SDK 8サポート・ タイムラインに従ったEclipse向け のサポートを利用できます。 JAVA IN ACTION Support for device- and client-specific security policies JAVA TECH Java ME 8 Security Domains ABOUT US //embedded / MORE ON TOPIC: Java 8 Is Here LEARN MORE • Oracle Java ME Embedded FAQ blog • JSR 360(Connected Limited Device Configuration 8) • JSR 361(Java ME Embedded Profile) 58
© Copyright 2024 ExpyDoc