Java イベントレポート
Javaの最新動向を見極める デブサミ2007
@IT編集部
平田修
2007/2/22
主な内容 |
Javaから見たデブサミ2007
今年の「Developers Summit(通称デブサミ)」は2月の14、15日に東京・目黒の目黒雅叙園にて開催された。今年は昨年までの5会場に加え、「コミュニティライブ!」と称したオフィシャルコミュニティによる30分間のミニライブ会場を特設し、ステージ数も6会場へと増えている。全体では、上記の「コミュニティライブ!」を含め、全部で80を超えるセッション(講演)が行われ、100人ほどのスピーカーが熱弁を振るった。
本稿では、数あるセッションの中から記者が厳選して、Javaに関するものを中心にいくつかレポートしていく。
■ 関連リンク
あのDukeがリンゴを射抜く?
まず最初に紹介するのは、サン・マイクロシステムズ(以下、サン)の草薙昭彦氏によるReal-Time System For Javaについてのセッション、『ここまで来たかリアルタイムJava最新事情』だ。
デモの準備をする草薙氏 |
草薙氏によるセッションでは、まず、サンが毎年行っているイベント「JavaOne」において、リアルタイムシステム(以下、RTS)を使ったデモについていくつか(カーレースや重力センサーを使った振り子など)紹介された。簡単にいうと、カーレースはスレッドが走るプログラムを組み込まれたロボットがセンサーを感知して処理をリアルタイムに変えていくものだった。
そもそも、JavaにおいてのRTSは歴史が古く、RTSJ(The Real-Time Specification for Java)という名前で1998年より策定されていて、組み込み分野での活用が見込まれているそうだ。
次に、草薙氏はRTSJのAPIを採用することによって、いかに簡単にRTSプログラミングを行えるか、RTSJの主な機能について解説した。その主な特徴としては、リアルタイムGC、優先度継承プロトコル、より正確になったスレッド・スケジューリング、非同期制御転送などが挙げられ、メモリ管理に関しては、ヒープメモリと同時にガベージコレクションの影響を受けないメモリが別に使われるということだった。
最後に、サンによるJavaのマスコットキャラ、Dukeを使ったRTSプログラムのデモが行われた。本邦初公開となったそのデモは、Dukeが弓矢を構えて待機し、2〜3メートル離れた場所に約2メートルの高さから30センチメートルほどのひもでリンゴを縛り付け、そのリンゴを落とした瞬間に、センサーがリンゴの落下を感知して弓矢で射抜く、というものだった。
あっという間の出来事だが、確かにリンゴは射抜かれている (撮影:@IT編集部 平田)【編集部注:映像が見れない場合はこちらも参照してみてください。】リンゴが落下するまでのわずか数ミリ秒の中でリンゴの落下速度、大きさ、弓矢の軌道、速度などを瞬時に計算しているのである。これが100%ピュアJavaのRTSJアプリによるものなのだから、デモとしても効果的でインパクトがあり、会場からも射抜いた瞬間に拍手が起こっていた。
このように、RTSJの大きな可能性を示した面白いセッションだった。余談だが、セッション後に草薙氏に話を伺ったところ、実際にはJavaでプログラミングするよりも、センサーなどを作ることの方が時間がかかったそうだ。
■ 関連リンク
MyEclipseならAjaxもええじゃないか♪
次に紹介するのは、エクリプスの水島和憲氏によるAjaxとJavaの連携についてのセッション、『ええじゃないか AJAX 〜 Javaディベロッパにもええじゃないか♪ 〜』だ。
セッション中の水島氏 |
セッションの中で水島氏は、Ajax+Javaのプログラミングをするのに、MyEclipseを使うことの利点をいくつか述べていた。その中でも特筆すべき特徴は、EclipseでJavaをデバッグするのと同じ操作性でJavaScriptのデバッグができる、ということだろう。デモにおいても、ブレークポイントを置いてデバッグ実行し、1行ずつステップ実行するという、あの普段どおりのJavaデバッギングがJavaScriptで行われていた。
また、もう1つの大きな特徴として、「Web 2.0ブラウザ」が挙げられていた。MyEclipseの「Web 2.0ブラウザ」は外部のページであっても、どのようにAjaxが動作しているのかを確認することが可能で、上記のようにJavaScriptのデバッグができ、どのように非同期通信が行われているのかも確認できるということだった。これもデモが行われ、実際に外部ページにデバッグが行われていた。
水島氏いわく、「外部のページをいろいろと見てみたが、GoogleのJavaScriptは1行で記述されているため、ブレークポイントが置けない。」ということだった。どうやら、Googleはあまり自社のJavaScriptを解析されたくないようだ。
ほかにも、JavaとAjaxを連携させるフレームワークとしてDWR(Direct Web Remoting)の解説が行われた。DWRは2.0になって、クライアントのJavaScriptからサーバのJavaオブジェクトを非同期に呼び出せるだけではなく、逆に、JavaからJavaScriptを非同期に呼び出せるようになったことなどが主に述べられていた。
Java開発者に敷居が高いと思われているAjaxだが、おそらく、このセッションに参加した人は「Ajaxを使ってみても、ええじゃないか」と思ったことだろう。
■ 関連リンク
1/2 |
Index | |
Java イベントレポート Javaの最新動向を見極める デブサミ2007 | |
Page1 Javaから見たデブサミ2007 あのDukeがリンゴを射抜く? MyEclipseならAjaxもええじゃないか♪ |
|
Page2 アーキテクチャとしてのマッシュアップ JavaからRubyへ移行する時は今だ? RubyはJavaの道具として使う! 春闘2007といっても、労働組合ではない デブサミ2008はどうなる? |
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に関する基礎知識を解説する。
|
|