そしてストラテジーキーノートの最後に触れたのは2011年のJavaOneで華々しいデビューを飾った「Project Avatar」だ。Project Avatarはnode.jsのプログラミングモデルとJava EEの提供する広範なサービスを融合させてHTML5ベースでデバイスに依存しないアプリケーションを構築する基盤だ。
ワンソース、マルチデバイスアプリケーションの開発基盤として発表され大きな期待を浴びていたが、2年間特に進捗は見られなかった。ところが今回、突然オープンソース化されることが発表された。
コミュニティの期待に応えてオープンソース化したというよりは、開発リソースをJava 8やJava 9などに集中させるため、コミュニティにその未来を委ねたというのが実際のところではないだろうか。Project Avatarのドキュメントやソースコード、関連プロジェクトはProject AvatarのWebサイトで確認できる。
JavaOneやOracle Open Worldの基調講演には「スポンサー枠」がある。初日の基調講演のスポンサーとして登場したのはIBMだ。IBMの“Java CTO”であるJohn Duimovich氏はIBMのJavaへの取り組みを熱心に語った。
まずDuimovich氏が強調したのは、現在は「polyglot」(1プロジェクトで複数のプログラミング言語を取り扱う)の時代であり、多数ある言語の選択肢の中でもJavaはいささか古くささが揶揄されているものの依然人気のプログラミング言語で、IBMとして投資し続けていることだ。そして「IBMはセールス要員よりも開発者をより拡充している」と開発者にラブコールを送った。
そしてIBMのオープンなクラウドアーキテクチャである「BlueMix」の取り組みについて紹介した後、やはり今トレンドであるビッグデータに触れた。
「Javaはビッグデータを扱うのに最適なプラットフォームであるが、膨大なデータを処理する上で、まだまだ改善の余地がある」(Duimovich氏)
特にメモリの利用効率についてIBMは研究投資しており、例えば現在2Gbytesのデータを扱うのに400Mbytesほど余計にヒープを使うようなJVMのアーキテクチャに問題を感じており、その一環として生まれた「PackedObjects」という取り組みを紹介した。
PackedObjectsはデータをヒープ領域外に置きながらもアプリケーションからはJavaのオブジェクトとして透過的に扱える仕組みで、これを利用するとビッグデータを処理する際にメモリフットプリントは20%改善、処理時間は実に95%も向上するという。
「IBMのJVMには、すでに実験的に組み込まれているが、標準化して汎用的に利用できるようにするにはJVMの仕様にも手を入れる必要がある」(Duimovich氏)
最後にDuimovich氏が強調した言葉は「Java's not done」だ。この「not done」というのは「終焉を迎えていない」という意味ではない。
「Javaは、すでに完成された、成熟し切ったプラットフォームではなく、これからもPackedObjectsだけではなく、クラウドやビッグ***、セキュリティ、互換性と多岐にわたって改善、進化していく余地があり、それを支えていくのは開発者だ」(Duimovich氏)
レポートの後編では、テクニカルキーノート、コミュニティキーノート、そしてテクニカルセッションの中からいくつかの講演の模様をお届けする予定だ。
山本裕介
Twitter APIのJava向けライブラリ「Twitter4J」やトラブルシューティングツール「侍」などを開発するオープンソースソフトウェアデベロッパ。
株式会社サムライズム代表。
Twitterアカウント:@yusuke
Copyright © ITmedia, Inc. All Rights Reserved.