IoT時代の主役に! コミュニティとともに、Javaの進化はさらに続く──Java Day Tokyo 2014基調講演レポート

Oracle Java & Developers編集部
2014-06-04 17:20:00
  • このエントリーをはてなブックマークに追加

2014年5月22日、品川プリンスホテルで「Java Day Tokyo 2014」が開催された。IoT時代を支える中核テクノロジーとして、Javaの実力を示すさまざまなデモが実施された基調講演の模様をレポートする。

待望のJava SE 8登場で、Java開発はどう変わるのか? 日本語版ドキュメントも公開!

 日本オラクルは2014年5月22日、Java開発者向けイベント「Java Day Tokyo 2014」を東京の品川プリンスホテルで開催した。日本独自のイベントとして昨年よりスタートしたJava Day Tokyo。2回目となる今回は、前回を上回る数の開発者が参加し、Javaの最新情報を伝える数々のセッションに耳を傾けた。ここでは、当日の午前中に実施された基調講演の要旨を紹介する。

米国オラクル Javaクライアントデベロップメント担当バイスプレジデントのナンディーニ・ラマーニ氏
米国オラクル Javaクライアントデベロップメント担当バイスプレジデントのナンディーニ・ラマーニ氏

 Java Day Tokyo 2014において最もホットなトピックとなったのは、先頃リリースされたJava SE 8およびJava ME 8だ。最初に登壇した米国オラクル Javaクライアントデベロップメント担当バイスプレジデントのナンディーニ・ラマーニ氏は、組み込み領域を含め、あらゆるコンピューティング環境とデバイスをサポートするJavaプラットフォームのユビキタス性への取り組みに触れたうえで、「これまで、Javaをあらゆる環境に適合させるために、さまざまな提案を行ってきましたが、結果的に多くの仕様が策定され、複雑化が生じました。そこで、Java 8以降では、APIと言語仕様の両面で整理と統一を図っていきます」と説明した。

 現在、クライアント向けのJava仕様としては、対象となるデバイスのフットプリントに応じてJava SE(Java Platform, Standard Edition)、Java ME(Java Platform, Micro Edition)があり、さらにJava MEに関してはCDC(Connected Device Configuration)、CLDC(Connected Limited Device Configuration)といったサブセットが存在する。Java 7まで、これらは利用できるAPIセットや言語機能に大きな違いがあり、このことが、特に組み込み領域でJavaを使う開発者に不便を強いていたという。


 これがJava 8以降、これらの仕様/サブセットがJava SEとJava MEの2つを中心にしてシンプルに再構成され、各エディションで利用できるAPI、言語機能が大きく共通化されていく。

 「このようにJava環境が整備されていくことで、Java開発者は自身が持つスキルを、"モノのインターネット(IoT:Internet of Things)"時代の広範な市場およびデバイスで活用していけるようになるのです」(ラマーニ氏)



 またラマーニ氏は、着々と機能強化が進むJava SEの注目ポイントとして、「並列処理のサポート」を例にとり、Java SE 8における「ラムダ式」の導入と、現在開発が進む「Project Sumatra」を紹介した。

 ラムダ式とは、Java SEで関数型インタフェースを実装するにあたり、その記述を大幅に簡略化する記法だ。これを使うことで、同じくJava SE 8で導入された「Stream API」などの新機能を使う際、従来と比べて開発生産性を大幅に高めることができる。一方、Project Sumatraとは、マルチコアCPUに加えて、GPUやAPUも使った高速な並列処理をJavaで容易に実現することを目的としたプロジェクトである。これらにより、Javaをさらに強力で生産性の高い技術に進化させようというわけだ。

 以上の取り組みを紹介した後、ラマーニ氏は同日にJava SE 8の日本語ドキュメントを公開したことを発表。参加者らに対し、このドキュメントも参考にしながら、Java SE 8の新機能に早く慣れ親しんでほしいと呼び掛けた。

IoT時代を支えるプラットフォームとして、多くのパートナー企業とともに"組み込みJava"を強力に推進

 ラマーニ氏は続いて、IoTの領域における組み込みJava(Embedded Java)の取り組みを紹介した。組み込みJavaは現在、スマートカード向けの「Java Card」をはじめ、携帯電話やスマートフォン、家電製品、業務用機器など、さまざまなデバイスに向けた環境が用意されている。今後、あらゆる「モノ」がインターネットに接続され、絶え間なく連携して新たな価値を生み出すIoTの時代において、より存在感を増していくことになる。

 「世界の人口よりも、ネットに接続するデバイスのほうが多くなるIoTの時代には、それらの協調や連携を効率化することで、新たなビジネス価値を生み出すことが求められます。Javaは、エンタープライズ・システムからセンサーなどのデバイスまでを一貫してカバーすることのできる、オープンかつ無二のプラットフォームです。オラクルは、エンタープライズ分野と同様に、IoTの分野においてもプロセッサ・ベンダーを含むあらゆる企業と協力しながら、組み込みJavaを推進していきます」(ラマーニ氏)

 講演では、組み込みJavaに関するパートナー企業として、ARMやフリースケール、クアルコム、ラズベリーパイ財団、ジェムアルト、STマイクロエレクトロニクスといった各社の名前が挙げられたほか、イマジネーションテクノロジーズとオラクルが、MIPSアーキテクチャ向けOracle Javaの開発で協業することも発表された。

NECとパナソニック システムネットワークスも登壇。国内でも先進分野で組み込みJavaの活用が進む

 またラマーニ氏は、日本において組み込みJava分野で先進的な取り組みを進めるパートナー企業として、NECとパナソニック システムネットワークスの担当者を壇上に招いた。

NECソリューションプラットフォーム統括本部の石黒新氏
NECソリューションプラットフォーム統括本部の石黒新氏
PaPeRo petitに話し掛ける石黒氏
PaPeRo petitに話し掛ける石黒氏

 NECからのゲストは、ソリューションプラットフォーム統括本部の石黒新氏だ。同社が2013年11月に発表したクラウド連携型ロボットプラットフォーム「PaPeRo petit(パペロ プティ)」では、ロボットデバイスとクラウド側との通信制御などでJava SEを利用している。

 「PaPeRo petit」は、主にヒューマンインタラクションを行うロボットデバイスと、ロボットデバイスの制御やデバイスからのデータ収集/蓄積を行うクラウド側プラットフォームで構成される。クラウド側プラットフォームに各種のアプリケーションを用意することで、例えば「高齢者向けの見守りサービス」、「生活支援サービス」、「店舗向けの接客サービス」といった、ロボットをユーザーインタフェースにしたサービスの提供が可能になる。これらのアプリケーションについては、ビジネスパートナーとも協業しながら開発していく計画だという。


パナソニック システムネットワークス ターミナルシステムBU ソリューション開発グループの油田雅哉氏
パナソニック システムネットワークス ターミナルシステムBU ソリューション開発グループの油田雅哉氏

 パナソニック システムネットワークスから登壇したのは、ターミナルシステムBU ソリューション開発グループの油田雅哉氏である。同部門では、POS端末、カード決済端末をはじめとする各種ターミナル・システムを利用したソリューションを提供している。油田氏は、なかでも近年事業者や利用者が拡大している電子マネー決済端末分野でのJava MEの活用事例を紹介した。

 「電子マネーによる決済では、読み取りだけでなく、各センターと連携したさまざまなデータのやり取りや処理が必要になります。当社では、電子マネー決済端末の一部の機種において、センターとの連携やヒューマン・インタフェースの部分にJava MEを採用しており、また将来的にはサードパーティが開発したプログラムの実行環境としてもJavaを活用する予定です。この分野において、Javaの存在感は日増しに強くなっていると感じています」(油田氏)


 ゲストによるスピーチが終わると、ラマーニ氏は最後にJava SEとJava MEのロードマップを紹介。今後は組み込み向けJava SE/Java MEの強化を図りつつ、2016年のリリースが予定されるJava 9以降では、「Project Jigsaw」によるモジュール化、各エディションの機能セットのさらなる共通化を図っていくと説明した。