Effective Java(エフェクティブジャバ)
- 著者:
- Joshua Bloch/柴田 芳樹(ジョシュアブロック/シバタヨシキ)
- 出版社:
- 丸善出版
- 出版日:
- 2018年10月26日頃
- ISBN:
- 9784621303252
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
Java プログラマーにとって必読の定番書『 Effective Java 』の改訂第 3 版。
この第 3 版では、 Java 8 で新たに導入されたラムダとストリームに関する章が新規に追加されたほか、オプショナル、インタフェースでのデフォルトメソッド、 try-with-resources 文、@SafeVarargs アノテーション、モジュールなどの機能を扱った項目を含み、第 2 版の 78 項目から 90 項目に増加しています。
今日では Java は大きく複雑になり、並列実行から、繰り返し、各種データの表現まで、多くの事柄に対して多様な抽象化を持ち合わせています。
この大きさと複雑さを考えると、最新のベストプラクティスの指導書はなおさら重要です。
本書は多くのデザインパターンとイデオムを示すコード例を含んでおり、プログラミング言語 Java の正しい理解と、簡潔で明瞭で正確なソフトウェアの設計に役立つでしょう。
日本語版によせて
訳者まえがき
Effective Java によせて
まえがき
謝辞
第 1 章 はじめに
第 2 章 オブジェクトの生成と消滅
第 3 章 すべてのオブジェクトに共通のメソッド
第 4 章 クラスとインタフェース
第 5 章 ジェネリックス
第 6 章 enum とアノテーション
第 7 章 ラムダとストリーム
第 8 章 メソッド
第 9 章 プログラミング一般
第 10 章 例外
第 11 章 並行性
第 12 章 シリアライズ
付録 第 2 版に対応する項目
参考文献
索引
技書の森解説
Java の文法を覚えた段階と、堅牢で保守しやすいコードを書ける段階の間には大きな溝があります。本書は Joshua Bloch が Java の言語仕様とライブラリ設計に携わった経験をもとに、その溝を埋めるための 90 の項目 (Item) をまとめたベストプラクティス集です。「 static ファクトリメソッドを検討せよ」「 equals をオーバーライドするなら hashCode もオーバーライドせよ」といった具体的な指針が、理由・コード例・代替案とともに提示されます。
各項目は独立しているため通読する必要はなく、コードレビューで指摘された箇所や設計で迷った場面で該当する Item を引く、という使い方が日常に溶け込みます。第 3 版では Stream API 、 Optional 、ラムダ式など Java 8 以降の機能に関する項目が追加されており、モダンな Java の書き方にも対応しています。言語設計者自身が「なぜこう書くべきか」を語るため、単なるルール集ではなく設計の意図を理解できる点が強みです。
前提として Java の基本文法とオブジェクト指向の概念を理解していることが求められます。完全な初学者には難しく感じますが、業務で Java を書いている中級者であれば、読むたびにコードの質が変わる実感を得られるでしょう。 Java を主力言語にしている開発者にとって、一度は通るべき通過点と位置づけられている本です。
言及 Qiita 記事 (28 件)
新人さんにすすめる有益な技術書達 2022春
♡ 528読書, まとめ, 新人プログラマ応援10年前はGoFのデザインパターン本を読んで何やらわかった気になっていました
♡ 50Java, デザインパターン, Qiita10th_過去【Java】static と synchronized から始めるマルチスレッド入門
♡ 17Java, マルチスレッド, メモリ管理, static, 排他制御例外的状況にだけ例外を使う 〜 Seleniumでの要素存在判定を題材に
♡ 12Python, Selenium, 例外, 例外処理【Cloud9 Advent Calendar Day1】今年購入してよかったガジェット11選
♡ 7Java, デザインパターン, ガジェット2025年の私の最近の勉強法
♡ 5ポエム, 仕事効率化, 勉強法Javaでの擬似自分型(Simulated self type)
♡ 3Java, TypeScript, デザインパターン, メソッドチェーン, BuilderPatternLombok の @EqualsAndHashCode の callSuper について
♡ 3Java, LombokKotlinにおけるオブジェクト比較
♡ 2Kotlin高校生でもわかる!RPGで学ぶJavaオブジェクト指向プログラミング【完全版】
♡ 2Java, オブジェクト指向, プログラミング, ポートフォリオ, Java入門