きしだのはてな このページをアンテナに追加 RSSフィード

2018-10-25(木) Oracle Code One - day 4

[][][] Oracle Code One - day 4 06:57  Oracle Code One - day 4を含むブックマーク

ということでOracle Code One最終日。4日は短い。

f:id:nowokay:20181027064432j:image


The Future of Java SE[DEV6323]

Java SEの今後という話。

f:id:nowokay:20181027061334j:image

寝坊したので、入ったときにはJEP 11やJEP 12の話をしてました。--enable-previewってJEP12だったんだ、という気づきがあった。

JEP 11: Incubator Modules

JEP 12: Preview Language and VM Features

あとはProject PortlaとかLoom、Amber、Valhalla、Skaraの話を。


More Java Community Insider Secrets[DEV6051]

キャプテンアメリカがいると聞いて。

f:id:nowokay:20181027061303j:image


一緒に写真とってもらった

f:id:nowokay:20181027061247j:image


Project Panama's Foreign API[DEV6075]

PanamaのJFFIの話。ネイティブ呼び出しが楽に、速くなるよ、と。

最前列に日本のこわいひとたちが陣取っていました

f:id:nowokay:20181027062058j:image


そしてOpenGLを呼び出すデモ。

f:id:nowokay:20181027062043j:image


Code One弁当

ごはん。食べれた。ダイエットじゃないペプシも取れたし。

f:id:nowokay:20181027062027j:image

f:id:nowokay:20181027062010j:image


Yes, JavaScript Is Faster Than Java(When You Use GraalVM)![DEV5706]

Graal VMJavaScriptを動かすと速くなるよという話なのだけど、なんか淡々とデモしはじめてGraal.JSの仕組みとか話さなさそうなので撤退

f:id:nowokay:20181027063248j:image


Using Java CompletionStage in Asynchronous Programming[DEV4798]

CompletionStageの使い方、というセッションなんだけど、ADBA(Asynchronous DataBase Access)の説明だった

早めに終わったので、JSのほうに戻ってみたけど、やっぱ淡々とデモやってたので、抜けて正解だったなと思った。しかし、戻らずに@yusukeのTwitter4Jのほうに行くのが正解だったと思う。

f:id:nowokay:20181027063232j:image


Kotlin as a Modernized Java[DEV5452]

Functional Exception Handling in Javaが満席だったし他の人も聞いてたので、Kotlinの話へ。

f:id:nowokay:20181027063216j:image

Javaが201X年にデザインされていたら、という話だったので、聞きやすかった。

f:id:nowokay:20181027063201j:image


GraalVM: Vision and Roadmap[DEV5580]

GraalVMのロードマップ知りたいなーと思ったら、ふつうにGraalVMの現状の機能説明してて、結局ロードマップの話はなかった・・・

f:id:nowokay:20181027064503j:image


しかし、身振りが大きい。

f:id:nowokay:20181027064448j:image


Stephenさんの家でバーベキュー

おわったら、みんなでStephen Chinさんの家でバーベキュー。

f:id:nowokay:20181027064633j:image


Cero_tはタコ焼がかり。

f:id:nowokay:20181027064557j:image


結局テーブルが溶けてたので、石の上で。しかし人件費の高いたこ焼きだ。

f:id:nowokay:20181027064524j:image


肉は自動でぐるぐるされていました。

f:id:nowokay:20181027064541j:image


肉もタコ焼もビールもおいしかった。やはりヨーロッパビールが赤道越えずに輸入できるのは いいな。

f:id:nowokay:20181027064617j:image

f:id:nowokay:20181027064650j:image


ホテルの近くのバー

いままでずっと気になってたのだけど、佐々木さんと来てみた。

f:id:nowokay:20181027064818j:image


タップもたくさんあって、すごくよかった

f:id:nowokay:20181027064835j:image


ゲームもある。

f:id:nowokay:20181027064802j:image


なんか来てるお客さんとちょっと会話する機会があったけど、とてもいい人ばかりだった。

また来年も来よう。

トラックバック - http://d.hatena.ne.jp/nowokay/20181025

2018-10-24(水) Oracle Code One - Day 3

[][][] Oracle Code One - Day 3 02:17  Oracle Code One - Day 3を含むブックマーク

JavaOneから名前が変わったOracle Code Oneに来てます。

3日目ですが、2日目にふたつセッションを持ってしまってその準備で余裕がなかったので、セッションに出るのはここからでした。ふたつ(120分+45分)は無理だったー

f:id:nowokay:20181026001027j:image


Production-Time Profiling and DIagnostics on the JVM[DEV4507]

JCMDやFright Recoder、Mission Controlなどでプロファイリングなどを行うセッションでした

f:id:nowokay:20181025180748j:image


Code One弁当

時間がちょっと空いたスキに弁当。照り焼きビーフとなんか麺

f:id:nowokay:20181025180732j:image


展示

展示もちょっと見ます。

f:id:nowokay:20181025180716j:image


ブロックチェーンビールなどというものがあります。あとで飲もうと思った。

f:id:nowokay:20181026001042j:image


MicroProfile and Jakarta EE: What's Next?[DEV5439]

MicroProfileの機能やJakarta EEの今後を紹介するセッション。

しかし、人がいないのが驚きだった。15人かな。

f:id:nowokay:20181026001006j:image


Programming Modern Storage Devices with JDK10[DEV5058]

Direct I/Oを使ってファイルシステムキャッシュを迂回したらCassandraのスループットが2倍になったよ、という話と、Remote Direct Memory Access(RDMA)を使う話。

Direct I/OはJDK10で動くけど、RDMAのほうはまだJEPドラフト。

f:id:nowokay:20181026001627j:image


休憩

次にとるセッションでよさげなのがなかったので堂島庵でうどん。うどんおいしい。

f:id:nowokay:20181026010053j:image

f:id:nowokay:20181026010037j:image


しかし今回どこに行っても水がおいしくないし、ホテルのシャワーは変なにおい。なんだろうと思ったら、杉山さん曰く、今年は山火事がすごくて水がなくなっているのだと。


会場にもどります。会場前の警備のひとかっこいい

f:id:nowokay:20181026001611j:image


そして展示にあったビールを飲もうと思ったらすでに終わっていたのですけど、アイスもってる人がいるなーと探してみたら無限ダッツあった!

f:id:nowokay:20181026001549j:image

f:id:nowokay:20181026002343j:image


Instant Startup and Low Footprint for Java[DEV5705]

起動を早くするというタイトルだったのだけどGraalVMでネイティブバイナリを作るという話でした。

AOTかー、ああね、みたいな感じ

f:id:nowokay:20181026002328j:image


Keynote: Groundbreakers: The Code Avengers [KEY6651]

そしてキーノートです

f:id:nowokay:20181026002312j:image


最初はIBMのターン。AdoptOpenJDKがどうのとか話してました。

Tシャツのロゴ、Eye-Bee-Mってことですね。

f:id:nowokay:20181026003838j:image


コミュニティによる寸劇は、今年はAvengers

キャプテンアメリカは、「ドイツ語なまりだけど?」ってつっこまれてました。あとドンキ。

f:id:nowokay:20181026003818j:image


みんなで写真をとって終了

f:id:nowokay:20181026003757j:image


コンサート

水曜はAT&Tパークでコンサートの日です。今年は一眼レフのようなでかいレンズのカメラは禁止で、櫻庭さんが嘆いていた。

f:id:nowokay:20181026003742j:image


野球場のグランドでコンサートやってます

f:id:nowokay:20181026005231j:image


そしてビール

f:id:nowokay:20181026005406j:image

f:id:nowokay:20181026005216j:image


月が出てて夜景がきれい

f:id:nowokay:20181026005200j:image


コンサートはBECKでした。今年は簡単に一番前までいけた。

f:id:nowokay:20181026005350j:image


ということで終了

トラックバック - http://d.hatena.ne.jp/nowokay/20181024

2018-10-10(水) 2つのJEPがJDK12のproposalに追加とかOpenJDKのLTSとか

[] 2つのJEPがJDK12のproposalに追加とかOpenJDKのLTSとか 07:05  2つのJEPがJDK12のproposalに追加とかOpenJDKのLTSとかを含むブックマーク

サボってる間にもいろいろあったのでまとめておきます。


2つのJEPがJDK12のproposalに追加

新たにJEPがふたつ追加されました。

JEP 340: One AArch64 Port, Not Two

JEP 341: Default CDS Archives


JDK12のリリーススケジュールが正式に発表

最初のProposalではRC Phaseは1/31だったのですが、Rampdown Phase 2が2週間しかないのは短すぎないかという指摘があって、修正されたものが正式に発表されました。

2018/12/13 Rampdown Phase One (fork from main line)
2019/01/17 Rampdown Phase Two
2019/02/07 Release-Candidate Phase
2019/03/19 General Availability

JDK 12


Microsoft、Azul SystemsがAzure上でのLTSに言及

Azureで利用するためであればZulu Enterpriseのビルドを無償で提供すると、MicrosoftとAzulが発表しました。

Microsoft and Azul Systems bring free Java LTS support to Azure | Blog | Microsoft Azure


Red HatのOpenJDKサポート方針について

Red Hatは2023年までOpenJDK 8を顧客向けにサポートすることを表明していましたが、この際にUpstream firstポリシーに基づいて、OpenJDK8のクリティカルなバグやセキュリティの修正について行われ続けるということをブログに書いています。

The future of Java and OpenJDK updates without Oracle support - RHD Blog


AdoptOpenJDKでOpenJDK11が正式公開

AdoptOpenJDKでOpenJDK 11のビルドが正式にダウンロードできるようになっています。

https://adoptopenjdk.net/?variant=openjdk11&jvmVariant=hotspot


また、MacではHomebrew-caskを使ってOpenJDK 11がインストールできるようになったようです。

$ brew cask install adoptopenjdk

JDK12のeaにString.align、String.indentが追加

Raw String Litearals(RSL)で便利なメソッドとしてalignやindentが追加されています。

特にalignは、RSLを使ったコードをみやすくインデントしたときに追加される余分な空白をなんとかするために便利です。

RSLの最中にインデントするとこんな感じで余分な空白が入ります。

jshell> var s = `
   ...>         test
   ...>         test
   ...>         `
s ==> "\n        test\n        test\n        "

これを、先頭に入るべき空白の数を指定して調整することができます。

jshell> var s = `
   ...>         test
   ...>         test
   ...>         `.align(0)
s ==> "test\ntest\n"

元はこれを言語仕様として対処しようとしていたのですが、やはり落とし所が難しかったようで、メソッドとしての実装になりました。

トラックバック - http://d.hatena.ne.jp/nowokay/20181010

2018-09-26(水) Java11、JavaFX11リリース!Java12EAにはRSLが入った

[]Java11、JavaFX11リリース!Java12EAにはRSLが入った 09:34 Java11、JavaFX11リリース!Java12EAにはRSLが入ったを含むブックマーク

Java11リリース!

Java11がリリースされました!こちらでダウンロードできます。

http://jdk.java.net/11/


ビルドは28で、8/23にでたRC1そのままになっています。

Mark Reinhold氏の言ったとおり、最後のビルドになりましたね。

JDK 11: First Release Candidate


Oracle JDKも開発・評価・テスト用にこちらでダウンロードできます。ただし、本番運用には使えないライセンスになっているのでご注意を。

https://www.oracle.com/technetwork/java/javase/downloads/index.html


主な変更点としては、Java EE・CORBAモジュールが削除されたこと、HTTP Client APIが標準になったこと、単一ソースファイルのJavaコードをjavaコマンドで実行できるようになったこと、GCとしてZGC・Epsillon GCが入ったこと、などがあげられます。

JDK 11


APIの変更についてはこちらを。

Java11でのAPI変更を雑に列挙 - きしだのはてな


OpenJFX11リリース

JavaFXのオープン実装であるOpenJFXも数日前に11がリリースされています。

JavaFX


Java12 ea12にRaw String Literalsが実装された

Java12 ea12にはRaw String Literals(RSL)が実装されました。

http://jdk.java.net/12/


indentやalignといったメソッドもStringクラスに追加されています。

ただし、Raw String Literalsを使うには--enable-previewをつける必要があります。

f:id:nowokay:20180926094951p:image


メソッドボディに関するJEP

メソッドボディをラムダのように書けるJEPが提案されています。

JEP draft: Concise Method Bodies


int twice(int x) -> x * 2;

のように書けるようにするものです。

メソッド参照の場合は

String toString(Foo f) = f::toString;

のような感じ。

移譲を書きやすくなりそうです。

トラックバック - http://d.hatena.ne.jp/nowokay/20180926

2018-09-17(月) JDK12は3/19リリース。あとOpenJDKのGithubリポジトリができた

[]JDK12は3/19リリース。あとOpenJDKのGithubリポジトリができた 02:52 JDK12は3/19リリース。あとOpenJDKのGithubリポジトリができたを含むブックマーク

9/25のJDK11リリースまで1週間となりました。


JDK12のスケジュール提案

そんな中、JDK12のスケジュールの提案が出てますね。2019/3/19リリースの予定です。

  2018/12/13  Rampdown Phase One
  2019/01/17  Rampdown Phase Two
  2019/01/31  Release-Candidate Phase
  2019/03/19  General Availability

Proposed schedule for JDK 12


OpenJDKのGithubリポジトリができた

ところで、OpenJDKのソース管理はMercurialで行われ、レビューはメーリングリストで行われています。

これをGitに移行してGithubを使ってみようという流れが起きています。

OpenJDK Commiter's Workshopでも長い時間をとって議論が行われていましたが、Mercurialリポジトリサイズが大きな問題になっていたように思います。


このプロジェクトはSkaraという名前になってます。

Call for Discussion: New Project: Skara -- investigating source code management options for the JDK sources

メーリングリストもできていますね。

skara-dev Info Page


ということで、まずはGithubリポジトリができました。

openjdk/jdk: Read-only mirror of http://hg.openjdk.java.net/jdk/jdk


Raw String Literalsが正式にJEPに入った

Raw String Literalsは正式にJEPに入りました。まだコードは取り込まれてないけど。

JEP proposed to target JDK 12: 326: Raw String Literals (Preview)

トラックバック - http://d.hatena.ne.jp/nowokay/20180917