JavaはクラウドやHTML5、
iOS/Androidも取り込む?
JavaOne 2011まとめレポート
Twitter Inc.
山本裕介
2011/10/14
Project Avatar − HTML5サポートによる全方位戦略
JavaFXとJava MEの融合でデスクトップアプリケーションもモバイルアプリケーションも同じAPIで開発できるようになるのは開発者にとってうれしいニュースです。しかし現在Webアプリケーションの基盤技術として最もホットなのは「HTML5」ではないでしょうか。
HTML5は、FlashやSilverlightなどの特定のベンダ固有の技術に頼らずWebブラウザ上で動くアプリケーションにリッチなUIを実装できるのが魅力的です。ただし、アプリケーションロジックはJavaScriptで実装することになり、大規模なアプリケーション開発やエンタープライズアプリケーションとの連携という面では必ずしも優れているとはいえません。
そこでオラクルは、「Project Avatar」と呼ばれるHTML5とJavaのハイブリッドアプリケーション技術が研究中であることに触れました。技術の詳細は明らかにされませんでしたが、アプリケーションのUIにHTML5を、アプリケーションのロジック部分にJavaを使うマルチプラットフォーム対応の環境のようです。
Project Avatarの概要 |
UIのリッチなアプリケーションをマルチプラットフォーム対応で実績のあるJavaで実現するという点で目標はJavaFXと似ていますが、HTML5を重心に置くことでRIAプラットフォームやHTML5に慣れたデザイナや非Java開発者に対してもフレンドリーな環境を用意するという戦略のようです。
デモでは、JavaFXと同じくiPadやAndroidタブレットで同じアプリケーションが動作する様子をアピールしていました。
コミュニティ − TwitterがOpenJDK/JCPに参加!
Javaはサンという1社が独占して進めてきた言語/仮想マシン規格ではなくコミュニティ(JCP = Java Community Process)が主体となって民主主義的に仕様を策定してきた歴史があります。
JCPには、主にJavaに強くコミットしている企業が参加しており、今回新たにTwitterが加盟することが発表されました。世界的に人気を誇るサービスを開発・運用する同社は大規模にスケールするシステム構築ノウハウを備えており、またサービスの実装言語をRubyから「JVM」へとシフトしていることを以前から公表しています。
JCP、OpenJDKに加盟するTwitter |
Javaではなく「JVM」なのは同社が「Scala」「Clojure」などJVMで動作するが 「Java」ではない言語も多く採用しているからです。コンパイラ型言語でありながらバイトコードと呼ばれる中間コードを解釈する形でマルチプラットフォーム動作を実現しているJVMは近年Javaに取って代わる、またはJavaを補完する別の言語とともに使うのがトレンドになってきています。
この方向性はサンやオラクルが主導してきたものではありませんが、例えば今回のJavaOneではScalaを扱うセッションが39もあり、コミュニティが主導となってJVM上でマルチ言語を扱う機運が非常に高まってきていることを裏付けています。
またJava SE 6までサンの「HotSpot VM」は実装は基本的にクローズドに行われていました。完全オープンソースのJVM実装を目指した「Apache Harmony」といったプロジェクトもありますが、サン/オラクルの協力が得られず正式なJava互換環境としては認証されていません(AndroidのDalvik VMはHarmonyプロジェクトがベースになっています)。
しかし、Open SolarisやGlassFishなど、オープンソースへの取り組みを強化したサンは、HotSpot VMもオープンソース化を決定し「OpenJDK」プロジェクトを発足しました。そしてレッドハットの強い支援を受けてOpenJDKベースのJava SE 6がオラクルのVMとは別にリリースされていることに加え、Java SE 7は最初からOpenJDKがベースとなっています。
これまでは、HotSpot VMやIBM JDK、JRockitなどのクローズドソースのVMが主流でしたが、IBMもJRockitチームもOpenJDKプロジェクトに賛同しています。またOpenJDKを活用しているというTwitterもOpenJDKプロジェクトへの加盟を果たしたことが発表されました。
また、やはりサン/オラクルによりクローズドに開発が行われてきたJavaFXもオープンソース化されることが発表されました。今回のJavaOneでは、オラクルが上手いさじ加減で支配力を弱めながらJavaをオープンでコミュニティ主体のプラットフォームへとシフトしているという印象を受けました。
JavaOne Tokyo 2012はどうなる?
去年のJavaOne 2010はJavaFX 2.0の戦略以外、これといって大きな発表はなく、「オラクルによるサンの買収に伴い、Javaプラットフォームが失速しているのではないか」という懸念が感じられました。しかし、今年はJava SE 7が計画通りリリースされたというニュースとともに、矢継ぎ早に新しい製品や戦略が発表されたことで、Javaがこれからも進化していくプラットフォームであることを確認できました。
また、日本ではすでに告知されていますが、JavaOneが来年東京で開催されることが、会場であらためてアナウンスされました。サンフランシスコで、世界で、そして日本で盛り上がるJavaには、これからも期待できそうです。
2012年4月4〜6日にJavaOne Tokyoを開催予定 |
■ 関連つぶやきまとめ
- JavaOne 2011 Technical Keynote #j1jp - Togetter
- JavaOne 2011 ストラテジックキーノート #j1jp - Togetter
- Mac OS XのOpenJDKのロードマップについて - Togetter
- JavaOne 2011 コミュニティーキーノート #j1jp - Togetter
■ 関連リンク
オラクル買収後のJava 7と8、JavaFXはどうなるのか JJUG Cross Community Conference 2011 Spring レポート Java SE/EEの今後やJRockitとHotSpotの統合など最新情報をお伝えする。そして今後のJavaOneは? 「Java
Solution」フォーラム 2011/5/30 |
あなたの知らないJDKの便利ツールたち 安藤幸央のランダウン(43) 最近のJDKに含まれている開発やデバッグに便利なツールを、プロファイリングや情報取得、監視、配備、スクリプティングの5種類に分けて紹介 「Java Solution」フォーラム 2008/11/13 |
開発者が知っておくべきJavaと仮想マシンの歴史 安藤幸央のランダウン(42) JavaとVMが生まれた背景や名前の由来、さまざまなJDK、マイクロソフトやAndroid、iPhoneとの関係、Java VMで動くスクリプト言語など 「Java Solution」フォーラム 2008/9/4 |
「Javaは遅い」から「Javaは楽しい」に至る歴史 小山博史のJavaを楽しむ(12) 最新のJava実行環境は起動が速いドラッガブルアプレットなど楽しい機能が満載です。ここまで至るには、いろいろな出来事がありました…… 「Java
Solution」フォーラム 2008/12/15 |
J2SE
5.0「Tiger」で何が変わるか? J2EE Watch (6) Javaの登場以来もっとも大胆な言語仕様の変更が行われたJ2SE5.0。その仕様の変更点とメリットについて整理してみよう 「Java
Solution」フォーラム 2004/10/16 |
【改訂版】Eclipseではじめるプログラミング これからプログラミングを学習したい方、Javaは難しそうでとっつきづらいという方のためのJavaプログラミング超入門連載です。最新のEclipse 3.4とJava 6を使い大幅に情報量を増やした、連載「Eclipseではじめるプログラミング」の改訂版となります 「Java
Solution」フォーラム |
Index | |
JavaOne 2011まとめレポート JavaはクラウドやHTML5、iOS/Androidも取り込む? |
|
Page1 JavaOne 2011まとめレポート Java SE − 7リリース、8は2013年、9はどうなる |
|
Page2 Java EE − 6の普及とマルチクラウドへの歩み JavaFX − 次世代のRIAプラットフォームとなれるか? Java ME − JavaFXと融合しAndroid/iOSに対応!? |
|
Page3 Project Avatar − HTML5サポートによる全方位戦略 コミュニティ − TwitterがOpenJDK/JCPに参加! JavaOne Tokyo 2012はどうなる? |
ご意見、ご感想はJava Solution 会議室へどうぞ |
Java Solution全記事一覧 |
- 実運用の障害対応時間比較に見る、ログ管理基盤の効果 (2017/5/9)
ログ基盤の構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。今回は、実案件を事例とし、ログ管理基盤の有用性を、障害対応時間比較も交えて紹介 - Chatwork、LINE、Netflixが進めるリアクティブシステムとは何か (2017/4/27)
「リアクティブ」に関連する幾つかの用語について解説し、リアクティブシステムを実現するためのライブラリを紹介します - Fluentd+Elasticsearch+Kibanaで作るログ基盤の概要と構築方法 (2017/4/6)
ログ基盤を実現するFluentd+Elasticsearch+Kibanaについて、構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。初回は、ログ基盤の構築、利用方法について - プログラミングとビルド、Androidアプリ開発、Javaの基礎知識 (2017/4/3)
初心者が、Java言語を使ったAndroidのスマホアプリ開発を通じてプログラミングとは何かを学ぶ連載。初回は、プログラミングとビルド、Androidアプリ開発、Javaに関する基礎知識を解説する。
|
|