あるふぁべっとがおおすぎる

ITネタとか勉強会とか色々

JJUG ナイトセミナー 「Java SE 10 / JDK10リリース特集」 行ってきた | Advent Calendar 2018

IT系の勉強会行ってきた Advent Calendar 2018 - Adventar の6日目

あまり使われなさそうなJDK10のやつ!
(LTSじゃないから勝手にそう思ってる)

※3月のメモなので違う部分があるかも

JDKリリースモデル変更について(おさらい)

  • OpenJDK:無償、GPLv2 + Classpath、6ヵ月単位にリリース 3,9月、3ヵ月単位にパッチ
  • Oracle JDK:有償のみ、3ヵ月単位にパッチ、3年間隔リリース
  • Deprecatedの運用ルールはそのまま、結果としては最短で1年で削除の可能性

 

  • ローカル変数の型推論 が可能になる
    今までのJavaは書きやすさをそんなに意識してなかった。読みやすさを保守的な考え
  • なぜローカル変数だけ?
    クラスのフィールドやメソッドの引数だと影響範囲が広がる
  • 制限色々
    初期化は必須、配列のカッコは利用出来ない、配列リテラルは禁止、Null初期化禁止

その他小さなアップデート諸々は資料見たほうが早いやーつ

 

  • メリット:便利な機能がどんどん入ってくる。今までは3年後とかだった
    デメリット:非互換性への対応コスト、プロダクションで使う際にロングタイムを意識する必要
  • 新機能はJEPを見ましょう
  • Deprecated が早くなる可能性はある(LTS→LTSで削除されてる)
  • Dockerコンテナ対応への改善
    Java起動した際にコンテナ以上のメモリサイズを取ろうとする問題が解決
  • Java8→9がいくつか変わってるのでそこだけ抑えておけば11へのアップデートはそんなに難しくなさそう

これも細かい話とかは資料に色々書いてあるので見ておいて損はないはず
Java界隈は最近新しい話が多くてJJUGにその辺取り上げてほしい。

Amazon Corretto Production-ready distribution of OpenJDK に対して有識者の見解を聞きたい。