新世代Javaプログラミングガイド[Java SE 10/11/12/13と - 言語拡張プロジェクト]

個数:1
紙書籍版価格
¥2,860
  • 電子書籍
  • Reader

新世代Javaプログラミングガイド[Java SE 10/11/12/13と - 言語拡張プロジェクト]

  • 著者名:MalaGupta/柴田芳樹
  • 価格 ¥2,860(本体¥2,600)
  • インプレス(2020/03発売)
  • ポイント 26pt (実際に付与されるポイントはご注文内容確認画面でご確認下さい)
  • ISBN:9784295008477

ファイル: /

内容説明

※この商品は固定レイアウトで作成されており、タブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字列のハイライトや検索、辞書の参照、引用などの機能が使用できません。

Javaのテクニックをアップグレードしよう!

バージョン10から最新版まで
さまざまなアップデートを一挙に学べる!

Java SE 10以降では、年2回のバージョンアップサイクルとなっています。
そのうちバージョン11は、長期サポート版としてリリースされました。

本書では「Java SE 10~13の新機能」と「開発中の機能」を取り上げています。
取り上げるテーマは、以下のとおりです。

型推論、アプリケーション・クラスデータ共有、
ガベージコレクタ、ラムダ式、ラムダパラメータ、enum、
データクラス、テキストブロック、パターンマッチング、など

機能の内容だけでなく、背景、使い方、ユースケースも適宜、説明しています。
本書は、機能拡張のサイクルを加速させるJava SEのアップデートを確認したい
読者にとって、最適な一冊です。

目次

表紙
サンプル/正誤/商標
訳者まえがき
まえがき
第1部 Java 10
第1章 ローカル変数での型推論/1.1 型推論とは/1.2 varによる型推論
1.3 Java 9までの型推論
1.4 課題
1.5 型推論と動的バインディング/1.6 まとめ
第2章 AppCDS - アプリケーション・クラスデータ共有/2.1 技術的な要件
2.2 CDSとは
2.3 AppCDS
2.4 まとめ
第3章 ガベージコレクタの最適化/3.1 技術的な要件
3.2 GCインタフェース
3.3 G1用の並列フルGC(JEP 307)
3.4 まとめ
第4章 JDK 10のその他の改良点/4.1 技術的な要件
4.2 JDK 10の機能と、対応するJEP番号/範囲
4.3 まとめ
第2部 Java 11
第5章 ラムダパラメータのローカル変数構文/5.1 技術的な要件/5.2 ラムダ式
5.3 ラムダパラメータとvarでの型推論
5.4 まとめ
第6章 Epsilon GC - ガベージコレクタの改良/6.1 技術的な要件
6.2 Epsilon GCの背後にある動機
6.3 HelloEpsilonGCクラス
6.4 Epsilon GCによるメモリプレッシャーテスト
6.5 ガベージなしアプリケーションを設計する
6.6 まとめ
第7章 HTTPクライアントAPI/7.1 技術的な要件
7.2 はやめぐり
7.3 コード例
7.4 非同期なGETを使ってHTMLページへアクセスする
7.5 まとめ
第8章 ZGC - 低遅延化とスケーラビリティの改善/8.1 技術的な要件/8.2 動機
8.3 ZGCのヒープ
8.4 ZGCのフェーズ
8.5 色付けされたポインタ
8.6 ZGCのチューニング
8.7 まとめ
第9章 フライトレコーダとミッションコントロール/9.1 技術的な要件
9.2 JFRの背景にある動機
9.3 JFRを使う
9.4 カスタムイベントに取り組む
9.5 まとめ
第10章 JDK 11のその他の改良点/10.1 技術的な要件
10.2 JDK 11の機能と、対応するJEP番号/範囲/10.3 ネストに基づくアクセス制御
10.4 動的クラスファイル定数/10.5 AArch64イントリンシックの改善
10.6 Java EEとCORBAモジュールの削除
10.7 Curve25519とCurve448での鍵合意
10.8 Unicode 10/10.9 ChaCha20とPoly1305の暗号アルゴリズム/10.10 単一ファイルソースコードのプログラム起動
10.11 TLS 1.3/10.12 Nashorn JavaScriptエンジンの廃止
10.13 pack200ツールとAPIの廃止/10.14 まとめ
第3部 Java 12
第11章 switc/11.1 技術的な要件
11.2 従来のswitch文の問題
11.3 switch式を使う
11.4 switchの条件分岐内でローカル変数を定義する/11.5 switch式の別の構文
11.6 プレビュー言語機能/11.7 網羅的なcase
11.8 値を返す以外にswitchの条件分岐ができること/11.9 switch式でラベルとcontinueを使えないケース
11.10 まとめ
第12章 JDK 12のその他の改良点/12.1 技術的な要件
12.2 JDK 12の機能と、対応するJEP番号/範囲/12.3 Shenandoah GC:一時停止時間が短いGC
12.4 マイクロベンチマーク・スイート
12.5 JVM定数API
12.6 AArch64版の一本化
12.7 CDSアーカイブをデフォルト
12.8 G1用の中止可能な混在コレクション
12.9 未使用のコミットメモリのG1からの迅速な返却/12.10 まとめ
第4部 Java言語拡張プロジェクト「Amber」
第13章 Amberプロジェクトの拡張enum/13.1 enumの背景
13.2 enum定数の状態と振る舞い
13.3 まとめ
第14章 データクラスとその利用方法/14.1 データクラスの紹介
14.2 データクラス
14.3 まとめ
第15章 テキストブロック/15.1 技術的な要件/15.2 簡単なコード例
15.3 既存の複数行の文字列リテラルでの問題
15.4 テキストブロック
15.5 よくある例
15.6 まとめ
第16章 ラムダの改善ポイント/16.1 技術的な要件/16.2 使われないパラメータをアンダースコアで明示する
16.3 ラムダパラメータのシャドーイング
16.4 関数式の曖昧性の除去
16.5 まとめ
第17章 パターンマッチング/17.1 技術的な要件/17.2 パターンマッチング
17.3 型検査での既存の問題
17.4 型検査パターン
17.5 switch構文でのパターンマッチング
17.6 まとめ
付録A Amberプロジェクト用のJDKのビルド手順
索引
著者/訳者紹介
奥付