さて、今日が最終日。昨日のライブで帰りが 1 時ごろ。そこから blog 書いたりして、ごそごそやっていたら寝たのが 3 時。
今日のキーノートは 9 時からなので、朝食を食べるには 7 時には起きないといけないのに....
起きてみたら、8:20。ねぼうしたぁ!!!!
急いで支度して、Moscone North のキーノート会場についたのは 8:50。なんとか間に合いました。しかし、会場はガラガラ。前の方でも余裕で席を取れました。
OpenWorld と JavaOne を合せて 41,000 人の登録があったといっていましたが、JavaOne だけを見ると 1 万人も行かなかったんじゃないかなぁ。
ところで、今年の JavaOne ではすべてのセッションで上の写真のような文言が必ず写されます。これは Safe Harbor Statements といって、将来の予想に関する記述が含まれており、実際とは異なる可能性があるということを示しています。
セッションの内容に責任は負わないということなのでしょうけど、そこまでやるのかなぁという感じですね。
というわけで今日聴講したセッションです。
Keynote
Technical Session
ほんとはもう 1 つセッションを登録していたのですが、JavaFX 2.0 を聴講した後のショックで聞く気がなくなってしまいました。詳細は後述します。
Keynote
JavaOne Keynote
ここ数年、最後の日の General Session は、James Gosling による Toy Show だったわけです。つまり、Java を使ったクールな技術を紹介するセッション。
だいたい 10 ぐらいの技術が紹介されていました。
今年もその流れは変わりません。しかし、紹介する技術の数も少ないし、LiveScribe や Volkswagen の自動運転のように過去の JavaOne で紹介したものも。
こうなると、ちょっとつまらないですね。
本編に入る前に Ray Kurzweil によるキーノート。これはちょっとつまらなかったので割愛。
MC は Mike Piech |
Ray Kurzweil |
続いて搭乗したプレゼンターは Richard Bair。
Richard Bair なので、紹介するのはもっぱらクライアント関連。ネットワークの可視可、JavaFX を使った MLB のサイト、心電図などをリアルタイムで携帯電話や Web で参照できるシステムの 3 つ。
Richard Bair |
Gephi の Mathieu Bastian。後ろに見えているのがネットワークを可視化したもの |
MLB.com の Michael Ahern。後ろが JavaFX で書かれた MLB のゲーム |
Pulse の Osama Oransa。心電をリアルタイムに計測している様子 |
続いて搭乗したのが、Greg Bollella。
彼はリアルタイムシステムの専門家なので、紹介する技術も組み込み関連です。
で、紹介したのが Livescribe、車の通過状況をリアルタイムに表示するシステム、そして Volkswagen の自動運転。
Livescribe はおととしのものからはアップデートしているとはいえ、基本的には同じ。車の通過状況を示すシステムは UI がショボショボ。よくこんな UI で、ここに出す気になったなぁという感じ。
Volkswagen の自動運転は今年は会場に実車を持ち込んできていました。去年は Golf の映像でしたが、今年は Audi。だとしても、一度見ているものはインパクトが薄いです。
ちなみに、この実車、インパネがすべて隠されていました。なにか秘密があるんでしょうね。
Greg Bollella |
手にしているのは New York Times にのった Livescribe の記事らしい |
Jim Marggraff が Livescribe のデモをしているところ |
Perrone Robotics の Brian Geiger |
本物の車を計測できないので、出てきたのがこれ |
|
Volkswagen の Marcial Hernandez |
実車のところで説明 |
こうやって見てみると分かるのですが、サーバー系の技術はまるでなし。もっとバランスよく紹介すればいいのに。
Technical Session
S314354 The Garbage Collection Mythbusters
GC の専門家である Tony Printezis と John Coomes による GC の神話 (Myth) をぶちこわすというセッション。このセッションが今回の JavaOne では一番おもしろかったなぁ。
2 人のかけあいで、ちょっと Java Puzzlers に似た感じです。
それにしても GC 関連者はなぜこうも早口なのか。John Coomes はまだいいのですが、Tony Pritezls はすごい早口。
Brian Goetz、Cliff Click、Tony Pritezls の 3 人は JavaOne の早口トリオと名付けてあげよう。
紹介した神話は 10。全部紹介するのはつらいので、1 つだけ。
参照カンター方式の GC がすべての GC の問題を解決できる
参照カウンター方式の欠点としては、カウンターのための余分な領域が必要となることや、マルチスレッド環境下でのカウント操作にオーバヘッドがあることなどあります。
また、基本的にはコンパクションはないので、フラグメンテーションを起こしやすい問題もあります。相互参照しているオブジェクトを GC できないという問題もあります。
コピー GC と組み合わせたり、バックアップ用の GC アルゴリズムと組み合わせることでよりよい参照カウント方式の GC を実現できますが、複雑になってしまいます。
ということで、参照カウンターではすべての GC の問題を解決できないが結論
他の神話もおもしろいので、ぜひ資料が公開されたら、参照してみてください。
Tony Printezis |
John Coomes |
JavaFX 2.0
さて、問題の JavaFX 2.0 です。
一番の問題は
JavaFX 2.0 では JavaFX Script をサポートしない
です。
つまり、JavaFX は Java で使用する GUI のライブラリの 1 つになったわけです。
でも、手続き型で GUI を構築するのが大変だから、宣言型文法を採用した JavaFX Script を採用したのに、そこがなくなってしまったら全然魅力がありません。
ようするに JavaFX は死んだも同然です。
もうダメですね。Swing と同じ。
だったら、Android と同じように XML を使うとにすればまだよかったのですが...
Swing であれだけツールのサポートが得られなかったのを見ていなかったのですかねぇ。今後も JavaFX に対応したツールはなかなか出てこないでしょうね。
宣言的文法でさえツールにとっては大変なのに、手続き型だとより一層大変になります。ツールが生成したコードは触れないというものしか出てこないでしょうね。
もっといいやり方があったはずなんですけどね。
Richard Bair |
Jasper Potts |
0 件のコメント:
コメントを投稿