Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Yuji Kubota
11,485 views
Java 10でぼくたちの生活はどう変わるの?
JJUG Night Seminar の資料です。主にJava 10による動作やAPIの変更について扱っています。 https://jjug.doorkeeper.jp/events/71974
Technology
◦
Read more
7
Save
Share
Embed
Embed presentation
1
/ 18
2
/ 18
3
/ 18
4
/ 18
5
/ 18
6
/ 18
7
/ 18
8
/ 18
9
/ 18
10
/ 18
11
/ 18
12
/ 18
13
/ 18
14
/ 18
15
/ 18
16
/ 18
17
/ 18
18
/ 18
More Related Content
PDF
Unified JVM Logging
by
Yuji Kubota
PPTX
java.lang.OutOfMemoryError #渋谷java
by
Yuji Kubota
PPTX
Java トラブル解析支援ツール HeapStats のご紹介
by
Shinya Takebayashi
PPTX
Java 9 and Future #jjug
by
Yuji Kubota
PDF
Prepare for Java 9 #jjug
by
Yuji Kubota
PPTX
Project Jigsaw #kanjava
by
Yuji Kubota
PDF
OpenJDK コミュニティに参加してみよう #jjug
by
Yuji Kubota
PPTX
Jdk9で変更になる(かも知れない)jvmオプションの標準設定
by
Kazuyuki Nakamura
Unified JVM Logging
by
Yuji Kubota
java.lang.OutOfMemoryError #渋谷java
by
Yuji Kubota
Java トラブル解析支援ツール HeapStats のご紹介
by
Shinya Takebayashi
Java 9 and Future #jjug
by
Yuji Kubota
Prepare for Java 9 #jjug
by
Yuji Kubota
Project Jigsaw #kanjava
by
Yuji Kubota
OpenJDK コミュニティに参加してみよう #jjug
by
Yuji Kubota
Jdk9で変更になる(かも知れない)jvmオプションの標準設定
by
Kazuyuki Nakamura
What's hot
PDF
HeapStats: Introduction and Technical Preview
by
Yuji Kubota
PDF
Migration Guide from Java 8 to Java 11 #jjug
by
Yuji Kubota
PDF
楽して JVM を学びたい #jjug
by
Yuji Kubota
PDF
JDK9 新機能 (日本語&ショートバージョン) #jjug
by
Yuji Kubota
PDF
Head toward Java 16 (Night Seminar Edition)
by
Yuji Kubota
PDF
OpenJDK トラブルシューティング #javacasual
by
Yuji Kubota
PDF
Getting Started GraalVM / GraalVM超入門 #jjug_ccc #ccc_c2
by
tamtam180
PPTX
jcmd をさわってみよう
by
Tsunenaga Hanyuda
PPTX
JAVA_HOME/binにあるコマンド、いくつ使っていますか?[JVM関連ツール編](JJUGナイトセミナー「Java解析ツール特集」 発表資料)
by
NTT DATA Technology & Innovation
PPTX
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
by
NTT DATA Technology & Innovation
PPTX
Guide to GraalVM (JJUG CCC 2019 Fall)
by
Koichi Sakata
PPTX
Tomcatの実装から学ぶクラスローダリーク #渋谷Java
by
Norito Agetsuma
PPTX
GraalVMを3つの主機能から眺めてみよう(Oracle Groundbreakers APAC Virtual Tour 2020 講演資料)
by
NTT DATA Technology & Innovation
PDF
Jjug ccc 2016 spring i 5 javaデスクトッププログラムを云々
by
torutk
PPTX
Guide to GraalVM (Oracle Groundbreakers APAC 2019 Tour in Tokyo)
by
Koichi Sakata
PDF
EnrootとPyxisで快適コンテナ生活
by
Kuninobu SaSaki
PPTX
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
by
Shinji Takao
PDF
Vespa 機能紹介 #yjmu
by
Yahoo!デベロッパーネットワーク
PPTX
GraalVM を普通の Java VM として使う ~クラウドベンチマークなどでの比較~
by
Shinji Takao
PDF
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
by
Yuji Kubota
HeapStats: Introduction and Technical Preview
by
Yuji Kubota
Migration Guide from Java 8 to Java 11 #jjug
by
Yuji Kubota
楽して JVM を学びたい #jjug
by
Yuji Kubota
JDK9 新機能 (日本語&ショートバージョン) #jjug
by
Yuji Kubota
Head toward Java 16 (Night Seminar Edition)
by
Yuji Kubota
OpenJDK トラブルシューティング #javacasual
by
Yuji Kubota
Getting Started GraalVM / GraalVM超入門 #jjug_ccc #ccc_c2
by
tamtam180
jcmd をさわってみよう
by
Tsunenaga Hanyuda
JAVA_HOME/binにあるコマンド、いくつ使っていますか?[JVM関連ツール編](JJUGナイトセミナー「Java解析ツール特集」 発表資料)
by
NTT DATA Technology & Innovation
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
by
NTT DATA Technology & Innovation
Guide to GraalVM (JJUG CCC 2019 Fall)
by
Koichi Sakata
Tomcatの実装から学ぶクラスローダリーク #渋谷Java
by
Norito Agetsuma
GraalVMを3つの主機能から眺めてみよう(Oracle Groundbreakers APAC Virtual Tour 2020 講演資料)
by
NTT DATA Technology & Innovation
Jjug ccc 2016 spring i 5 javaデスクトッププログラムを云々
by
torutk
Guide to GraalVM (Oracle Groundbreakers APAC 2019 Tour in Tokyo)
by
Koichi Sakata
EnrootとPyxisで快適コンテナ生活
by
Kuninobu SaSaki
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
by
Shinji Takao
Vespa 機能紹介 #yjmu
by
Yahoo!デベロッパーネットワーク
GraalVM を普通の Java VM として使う ~クラウドベンチマークなどでの比較~
by
Shinji Takao
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
by
Yuji Kubota
Similar to Java 10でぼくたちの生活はどう変わるの?
PDF
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-
by
PE-BANK
PPTX
Kanjava 201804 Java News
by
Koichi Sakata
PDF
Java によるクラウドネイティブ の実現に向けて
by
Shigeru Tatsuta
PDF
20161119 java one-feedback_osaka
by
Takashi Ito
PDF
Jakarta EE 9 と これから
by
Kenji Kazumura
PDF
JavaOne 2016 Java SE Feedback #jjug #j1jp
by
Yuji Kubota
PDF
より速く より運用しやすく 進化し続けるJVM(Java Developers Summit Online 2023 発表資料)
by
NTT DATA Technology & Innovation
PDF
JDK 13 New Features [MeetUp with Java Experts! @Gaienmae/Dojima 2019]
by
David Buck
PDF
Oracle code one 2018 報告会概要
by
Chihiro Ito
PDF
今年はJava進化の年!今知っておくべき新しいJava
by
Takashi Ito
PDF
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
by
NTT DATA Technology & Innovation
PPTX
Spring tools4
by
Takuya Iwatsuka
PDF
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
by
NTT DATA Technology & Innovation
PDF
JakartaOne Livestream Japan 2020
by
Kenji Kazumura
PDF
Developer Festa Sapporo講演資料:Java最新動向とこれからの活用
by
オラクルエンジニア通信
PDF
JavaOne 2015 JDK Update (Jigsaw) #j1jp
by
Yuji Kubota
PDF
10のJava9で変わるJava8の嫌なとこ!
by
bitter_fox
KEY
関ジャバ JavaOne Tokyo 2012報告会
by
Koichi Sakata
PDF
JDK Mission Control: Where We Are, Where We Are Going [Groundbreakers APAC 20...
by
David Buck
PDF
Oracle jdk 20190827 - 今、あらためてOracle提供のJDKを語る
by
オラクルエンジニア通信
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-
by
PE-BANK
Kanjava 201804 Java News
by
Koichi Sakata
Java によるクラウドネイティブ の実現に向けて
by
Shigeru Tatsuta
20161119 java one-feedback_osaka
by
Takashi Ito
Jakarta EE 9 と これから
by
Kenji Kazumura
JavaOne 2016 Java SE Feedback #jjug #j1jp
by
Yuji Kubota
より速く より運用しやすく 進化し続けるJVM(Java Developers Summit Online 2023 発表資料)
by
NTT DATA Technology & Innovation
JDK 13 New Features [MeetUp with Java Experts! @Gaienmae/Dojima 2019]
by
David Buck
Oracle code one 2018 報告会概要
by
Chihiro Ito
今年はJava進化の年!今知っておくべき新しいJava
by
Takashi Ito
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
by
NTT DATA Technology & Innovation
Spring tools4
by
Takuya Iwatsuka
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
by
NTT DATA Technology & Innovation
JakartaOne Livestream Japan 2020
by
Kenji Kazumura
Developer Festa Sapporo講演資料:Java最新動向とこれからの活用
by
オラクルエンジニア通信
JavaOne 2015 JDK Update (Jigsaw) #j1jp
by
Yuji Kubota
10のJava9で変わるJava8の嫌なとこ!
by
bitter_fox
関ジャバ JavaOne Tokyo 2012報告会
by
Koichi Sakata
JDK Mission Control: Where We Are, Where We Are Going [Groundbreakers APAC 20...
by
David Buck
Oracle jdk 20190827 - 今、あらためてOracle提供のJDKを語る
by
オラクルエンジニア通信
More from Yuji Kubota
PDF
Head toward Java 15 and Java 16
by
Yuji Kubota
PDF
Head toward Java 14 and Java 15 #LINE_DM
by
Yuji Kubota
PDF
Head toward Java 14 and Java 15
by
Yuji Kubota
PDF
オンライン会議と音声認識
by
Yuji Kubota
PDF
Head toward Java 13 and Java 14 #jjug
by
Yuji Kubota
PDF
Catch up Java 12 and Java 13
by
Yuji Kubota
PDF
Introduction to Java 11: Support and JVM Features #jjug
by
Yuji Kubota
PPTX
Secrets of Rock Star Developers (and How to Become One!) [CON7615] (Yuji KUBO...
by
Yuji Kubota
PDF
jcmd #javacasual
by
Yuji Kubota
PDF
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
by
Yuji Kubota
PDF
HeapStats @ Seasar Conference 2015 LT
by
Yuji Kubota
PDF
JDK9 Features (Summary, 31/Jul/2015) #JJUG
by
Yuji Kubota
PDF
JVM のいろはにほ #javajo
by
Yuji Kubota
PDF
HeapStats: Troubleshooting with Serviceability and the New Runtime Monitoring...
by
Yuji Kubota
PDF
29 Tips in 40 Minitues for GlassFish Fans #glassfishjp
by
Yuji Kubota
Head toward Java 15 and Java 16
by
Yuji Kubota
Head toward Java 14 and Java 15 #LINE_DM
by
Yuji Kubota
Head toward Java 14 and Java 15
by
Yuji Kubota
オンライン会議と音声認識
by
Yuji Kubota
Head toward Java 13 and Java 14 #jjug
by
Yuji Kubota
Catch up Java 12 and Java 13
by
Yuji Kubota
Introduction to Java 11: Support and JVM Features #jjug
by
Yuji Kubota
Secrets of Rock Star Developers (and How to Become One!) [CON7615] (Yuji KUBO...
by
Yuji Kubota
jcmd #javacasual
by
Yuji Kubota
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
by
Yuji Kubota
HeapStats @ Seasar Conference 2015 LT
by
Yuji Kubota
JDK9 Features (Summary, 31/Jul/2015) #JJUG
by
Yuji Kubota
JVM のいろはにほ #javajo
by
Yuji Kubota
HeapStats: Troubleshooting with Serviceability and the New Runtime Monitoring...
by
Yuji Kubota
29 Tips in 40 Minitues for GlassFish Fans #glassfishjp
by
Yuji Kubota
Java 10でぼくたちの生活はどう変わるの?
1.
Copyright©2018 NTT corp.
All Rights Reserved. Java 10でぼくたちの生活は どうかわるの? 2018年3月26日 NTT OSSセンタ 久保田 祐史
2.
2Copyright©2018 NTT corp.
All Rights Reserved. •2018/3/20 リリース予定! •前回から半年後 •12件の新機能 Java 10
3.
3Copyright©2018 NTT corp.
All Rights Reserved. •メリット •開発が活発化し便利な機能がどんど ん入る •例: Docker対応、あれば便利なAPI •「あれば便利」が3年後はつらかった •デメリット •非互換性対応などのアップデート対 応コストが高くなる リリースサイクル高速化 e.g.) String::repeat
4.
4Copyright©2018 NTT corp.
All Rights Reserved. •新機能 •JEP(Java Enhancement Proposal)を見る • openjdk.java.net/projects/jdk/10/#Features •APIの変更 •JSR(Java Specification Request)の最終仕様 書(Specification)を見る • cr.openjdk.java.net/~iris/se/10/latestSpec/ •非互換性 •リリースノートを見る •バグDBからも確認が可能 • https://gist.github.com/ykubota/3afcfdac5b 252bd31ae8c14b54b5d32f Java 10の情報収集
5.
5Copyright©2018 NTT corp.
All Rights Reserved. • JEP 286: Local-Variable Type Inference • ローカル変数の型推論「var」の導入 Java 10の主な嬉しい新機能
6.
6Copyright©2018 NTT corp.
All Rights Reserved. JEP 286: Local-Variable Type Inference URL url = new URL("http://java.net"); URLConnection conn = url.openConnection(); Scanner scanner = new Scanner(conn.getInputStream()); List<String> list = new ArrayList<String>(); Stream<String> stream = list.stream();
7.
7Copyright©2018 NTT corp.
All Rights Reserved. var url = new URL("http://java.net"); var conn = url.openConnection(); var scanner = new Scanner(conn.getInputStream()); var list = new ArrayList<String>(); var stream = list.stream(); JEP 286: Local-Variable Type Inference
8.
8Copyright©2018 NTT corp.
All Rights Reserved. • JEP 286: Local-Variable Type Inference • ローカル変数の型推論「var」の導入 • JEP 310: Application Class-Data Sharing • JVM プロセス間でメタデータやクラス情報を 共有する仕組み • 多数のプロセスを立ち上げるケースでのメモリ 節約と起動時間の短縮が見込める • Oracle JDK商用機能移行の第一弾 Java 10の主な嬉しい新機能
9.
9Copyright©2018 NTT corp.
All Rights Reserved. • AppCDS (Application Class-Data Sharing) • プロセス間でメタデータやクラス情報を共有する仕組 • Resource Management • プロセス間でメモリやスレッドプールを共有する仕組 • Java Flight Recorder(Flight Recorder) • JDKに組み込まれた低オーバヘッドのランタイム情報 プロファイリング、イベント収集フレームワーク • 本日(3/15)の朝にプロポーサルが出された • Java Mission Control(JDK Mission Control) • Java Flight Recorderによって収集されたデータを効 率的に分析するためのツール・セット • 先日(3/14)、コミュニティにてオープンソース化提案 に向けた議論が呼びかけられた Oracle JDKの商用機能
10.
10Copyright©2018 NTT corp.
All Rights Reserved. • JEP 286: Local-Variable Type Inference • ローカル変数の型推論「var」の導入 • JEP 310: Application Class-Data Sharing • JVM プロセス間でメタデータやクラス情報を 共有する仕組み • 多数のプロセスを立ち上げるケースでのメモリ 節約と起動時間の短縮が見込める • Oracle JDK商用機能移行の第一弾 • JEP 307: Parallel Full GC for G1 • シングルスレッド実行であったG1 GCのFull GCが並列化 Java 10の主な嬉しい新機能
11.
11Copyright©2018 NTT corp.
All Rights Reserved. •APIの変更(※調査中の値です。件=bugチケットの数) •追加2件以上 •非推奨化3件以上(非推奨化中止1件) •削除6件以上 •APIの削除 •Java 9よりDeprecatedアノテーション が強化され削除フラグが追加された •@Deprecated(forRemoval=true) •次バージョン以降に削除される Java 10の非互換性チラ見 jdeprscan ツールを使おう
12.
12Copyright©2018 NTT corp.
All Rights Reserved. •コンテナを認識せずホストのCPU数とメモリ を基に設定や動作が行われていた問題を修正 • -XX:+UseContainerSupport (デフォルト有効) • cpu sets, cpu shares, cpu quotasを基に設定 • -XX:ActiveProcessorCount=<count> で上書可 • cgroup filesystemの memory_limit を基に設定 •ヒープに使用するシステムメモリ量を柔軟化 • -XX:{Initial,Max,Min}RAMPercentage • -XX:{Max,MIN}RAMFraction より便利 •ホストからコンテナ上のプロセスにアタッチ できるように改善 Dockerコンテナに関する改善
13.
13Copyright©2018 NTT corp.
All Rights Reserved. •Add • java.util.Optional.orElseThrow() • java.util.Optional::get() からの置換推奨 • java.util.{List,Set,Map}::copyOf • 引数のコレクションが変更可能な場合はコピーし て変更不可能なコレクションを返す。変更不可能 な場合は、そのままリファレンスを返すメソッド • 変更不可能かどうかの確認メソッドや変更不可能 なコレクション作成を自前でやっていた場合はこ れに置換推奨 API
14.
14Copyright©2018 NTT corp.
All Rights Reserved. •Remove • forRemoval=trueのAPIが消えた • JDK内部Swing LookAndFeelsインスタンス生成API • javax.swing.UIManager.setLookAndFeel(…) • com.sun.security.auth.*の非推奨クラスを削除 • java.lang.SecurityManager::checkPermissionに 置換可能な非推奨クラスやフィールドを削除 • JDK 1.1から非推奨な国際化メカニズムの一部を 削除 • java.lang.Runtime::getLocalized{In,Out}putStream • その他、JavaFX関係のAPIが一部削除 API
15.
15Copyright©2018 NTT corp.
All Rights Reserved. •Add • javadocに以下の追加拡張が行われた • サマリアノテーション(@summary) • ヘッダフッタ指定(-top, -bottom) • オーバライドメソッド書式指定(--override-methods) • 複数スタイルシート利用サポート • Remove • policytool • javah (javac -h で代用可能) • JDK 6-8の標準ドックレット(doclet) • javadoc API(com.sun.javadoc)は非推奨だが存続 Tool
16.
16Copyright©2018 NTT corp.
All Rights Reserved. •Remove • -Xoss, -Xsqnopause, -Xoptimize, -Xboudthreads, -Xusealtsigs • -Xprof (FlatProfiler) • -XX:+Trace{Young,Old}GenTime • -Xlog:gc+heap+exit=debug に置き換わった • -d32, -d64 • Change • -XX:BiasedLockingStartupDelay が4000から0に • 計算機が向上し、遅延を有効にしてVMのオーバーヘッ ドが発生するよりは無効にした方が性能が良くなった Option
17.
17Copyright©2018 NTT corp.
All Rights Reserved. •盛り上がる Swing/AWT • Windows 8以降のキーボードがないモバイル環境な どでテキストコンポーネントにフォーカスを移した場 合、OSのソフトウェアキーボードが自動で出るよう になった その他
18.
18Copyright©2018 NTT corp.
All Rights Reserved. •JShellの起動が早くなった • コンパイラインスタンスを都度立ち上げていたので、 大量の snippet と共に起動しようとすると遅かった • krb5 1.15 追随 • includedir <DIRNAME> で指定したディレクトリ の .conf で終わるファイルも読むようになった • JNLP が IE 11 on Windows 10 で動かない • Windows 10 Creators Update適用後からJNLPリンクをクリ ックしてもJava Web Startアプリケーションが立ち上がらな くなった • Oracle 社の発表通り、Java 11以降は Java Web Start が Oracle JDKに含まれなくなる • OpenJDK には元から含まれていない その他