JavaOne2014 1日目メモ (9/28)
JavaOne2014の初日はコミュニティが主体のユーザグループフォーラム(UGF)と、キーノートがサンフランシスコのモスコーンセンタにて行われた。カメラとPCを繋ぐケーブルを家に忘れたので、写真は後日追加予定。
以下、荒い部分も数多くあるがセッション参加メモ。
Lambdas and Laughs [UGF9672]
プロジェクトラムダの振り返りに関するセッション。
ラムダ式とは?ストリームAPIとは?Optionalは?など、Java8に入った新機能についてコードを見ながら振り返り、JavaOneでの関連セッションを紹介する。ユーザグループフォーラムのセッションらしく、途中でウケ狙いのスライドがたくさん入っているが、何回もスベる。
内容については様々なJava8特集で既出のため、特記事項なし。
GlassFish Roadmap and Executive Panel [UGF9120]
GlassFishのロードマップと、今後の方針に関するパネルディスカッション。アジェンダについては、GlassFishのホームページにもまとめられている。
ユーザグループフォーラムにも関わらず、オラクルのJava EE関連のエヴァンジェリストReza Rahmanさんや、この後のストラテジキーノートでも講演するCameron Purdyさん、日本でもWebLogicの製品発表関連で見かけるMichael Lehmannさんなど、オラクルとしての方針を話そうな立場の人たちがパネラーに並ぶ。
GlassFish 製品の基本的な戦略 (アナウンス済み内容と同じ)
GlassFish4.1の新機能
Java EE8の今のところの方針
The OpenJDK Project: Your Java. Our Java. [UGF9755]
OpenJDKの今後の方針とコントリビュート方法に関するセッション。JEP(JDK Enhancement Proposals)に挙がっているJDKの改善案の紹介が行われた。いずれもドラフト段階だが興味深い。
紹介されたキーワードを以下のまとめる。
- Shenandoah : 新しいGCストラテジ
- 100GBヒープのような巨大ヒープでも、10ms以下の停止を目指す
List<Integer> list = #[ 1, 2, 3 ];
- Measurement API
- 色々な物事の値を単なるintやdoubleのような数値ではなく、クラスとして定義して抽象化したもの
- githubのコード例により何となくイメージできる。例えば以下は心拍数を示す。
public static void main(String[] args) { HeartRate rate = HeartRateAmount.of(BigDecimal.valueOf(90), BPM); System.out.println(rate); }
- HTTP2.0 Client
- 軽量なJSONパーサ などなど
Strategy keynote / Technical keynote
Strategy Keynote
- キーノートの前日に子供たちにプログラミングを教えるイベントがあったらしく、キーノートは子供たちの成果発表から始まる。
- 子供向けだけではなく、コミュニティやJCPを通じてコミュニケーションを取る姿勢をアピール
Java SE
- Java 8 buzz
- Java8は色々な記事にも取り上げられ、書籍もたくさん出版されて確実に広まっている。
- OpenJDKへのコントリビュート
- オラクル以外のコミュニティによる貢献が引き続き行われている。ダグ・リーさんによるコンカレントAPIへの継続的な貢献など。
- Goldman sachsによるJava8の適用事例
Java ME
- 普段使ってないので聞いてもよくわからず。
Technical Keynote
- 言語仕様やJVMの改善を盛り込むProject Valhalla、ネイティブコード呼び出しを改善するProject Panamaについては時間切れで説明なし
今年のキーノートは過去の振り返りが中心で新しい発表はなく、OpenJDKコミュニティやJCPで流れているJava9やJavaEE8の内容はまだまだ議論の途中でオラクルによる公式な周知はまだない印象を受けました。