学習ロードマップ

Spring Boot 入門

Spring Boot を読み書きするための Java 基盤を、入門から Effective Java まで 5 冊で組み上げる土台づくりロードマップ。

やさしいJava 第7版 プロになるJava-仕事で必要なプログラミングの知識がゼロから身につく最高の指南書 なぜ、あなたはJavaでオブジェクト指向開発ができないのか : Javaの壁を克服する実践トレーニング Java言語で学ぶデザインパターン入門第3版 Effective Java
SCROLL TO BEGIN

このロードマップが扱うもの

- Java Spring Boot 使 - Java OOP DI Spring Boot - Spring Boot

このロードマップの全体像

対象読者

  • 他言語の経験はあるが、Java と Spring Boot を業務で使うことになったエンジニア
  • 自学で Java を触ってみたものの、OOP や DI が腹落ちせず Spring Boot のドキュメントに挫折した人
  • Spring Boot の雛形は動かせるが、アノテーションや設計判断の「なぜ」を説明できない中級者

5 冊で到達する状態

  • 基本文法・クラス・例外・ジェネリクス・コレクションを迷わず書ける
  • Maven / Gradle と IDE を使い、業務コードに耐える構成で Java プロジェクトを立ち上げられる
  • 責務分割・インターフェース・依存方向を意識した OOP 設計ができ、DI の意義を自分の言葉で説明できる
  • Factory / Strategy / Template Method など主要パターンを読み取り、Spring の抽象化と対応づけられる
  • API 設計・不変性・例外設計・並行性の定石を踏まえ、レビューに耐える Java コードを書ける

進め方のヒント

  • 1, 2 冊目は写経で構文と標準ライブラリの手触りを作る段階に徹する
  • 3 冊目以降は既存の Spring Boot サンプル(例: Petclinic)を開き、本の章と突き合わせて読む
  • 5 冊目の Effective Java は通読より逆引きでの再訪を前提にし、設計判断に迷った章から戻る

ロードマップ

5 つのステップで読み進める

  1. 01
    ステップ 01 定番入門書で Java の手触りを作る
    やさしいJava 第7版
  2. 02
    ステップ 02 業務 Java の標準装備を棚卸し
    プロになるJava-仕事で必要なプログラミングの知識がゼロから身につく最高の指南書
  3. 03
    ステップ 03 OOP の壁を実践で越える
    なぜ、あなたはJavaでオブジェクト指向開発ができないのか : Javaの壁を克服する実践トレーニング
  4. 04
    ステップ 04 23 パターンで Spring の抽象を読む
    Java言語で学ぶデザインパターン入門第3版
  5. 05
    ステップ 05 レビュー耐性のある Java に仕上げる
    Effective Java

第 1 章

定番入門書で Java の手触りを作る

  1. 定番入門書で Java の手触りを作る

    文法・クラス・例外までを丁寧にたどるロングセラー入門書。Spring Boot 学習の前提となる Java の基礎語彙と書き癖を、ここで一気に揃える。

    やさしいJava 第7版
    この章の 1 冊 やさしいJava 第7版

    Javaの文法基礎からオブジェクト指向まで段階的に習得する

    この本で身につくこと
    • Javaの基本構文(変数・演算子・制御構文・配列)を手を動かしながら身につけられる
    • クラス・インスタンス・継承・インターフェースなどオブジェクト指向の核心概念を段階的に理解できる
    • OpenJDKを使ったJava 11対応の開発環境を自力で構築できる
    • 例外処理・コレクション・ジェネリクスなど実務で必須の標準的なJava機能を使えるようになる

    想定読者: プログラミング未経験または他言語を少し触れた程度の入門者で、Javaを基礎から丁寧に学びたい人。学習コストが高いと感じてJavaを避けてきた人にも向く。

    本の詳細を見る →
  2. 業務 Java の標準装備を棚卸し

    ビルドツール・IDE・テスト・ライブラリといった現場で必要な周辺知識を通しで学ぶ。Spring Boot プロジェクトを読むための土台をここで固める。

    プロになるJava-仕事で必要なプログラミングの知識がゼロから身につく最高の指南書
    この章の 1 冊 プロになるJava-仕事で必要なプログラミングの知識がゼロから身につく最高の指南書

    Java 17世代の文法と現場の周辺ツールを一冊で通して学ぶ入門書

    この本で身につくこと
    • JShellとIntelliJ IDEAを使い、値・型・変数といった基礎から対話的にJavaコードを書き始められる
    • switch式・レコード・var型推論など、Java 17世代のモダンな文法で日常的なコードを書ける
    • Stream APIとラムダ式を使った関数型スタイルのコレクション操作を、従来の手続き型と対比しながら使い分けられる
    • クラス・インタフェース・継承を「差分プログラミング」と「データの分類」という観点で整理して扱える

    想定読者: これからエンジニアを目指す初学者、および他言語で開発経験がありJavaを新しく習得したい現役エンジニア。完全な未経験で独学するにはやや歯応えがあるが、Progateや他書で文法の触りを済ませた後の「2冊目」として位置づけると効果が高い一冊。

    本の詳細を見る →
  3. OOP の壁を実践で越える

    責務分割と依存方向の感覚を手を動かして獲得する演習書。Spring の DI が解きたがっている問題を、自分の設計課題として体感する役割を置く。

    なぜ、あなたはJavaでオブジェクト指向開発ができないのか : Javaの壁を克服する実践トレーニング
    この章の 1 冊 なぜ、あなたはJavaでオブジェクト指向開発ができないのか : Javaの壁を克服する実践トレーニング

    JavaでOOPを短期間に本質から理解し、ゼロからプログラムを書く実戦力を身につける

    この本で身につくこと
    • オブジェクト指向の三大要素(カプセル化・継承・ポリモーフィズム)を概念だけでなくJavaコードで動かして確認できる
    • クラス設計の責務分担の考え方を習得し、ゼロからプログラムを組み立てる手順を身につける
    • Javaの壁として挙げられる設計判断のつまずきポイントを事前に把握し、実務でのトラブルを減らせる
    • オブジェクト指向の本質的な思考プロセスを、短期間のトレーニング形式で反復できる

    想定読者: Javaの文法は一通り学んだものの、クラス設計や責務分担をどう考えればよいか分からず、実務でオブジェクト指向を使いこなせていないと感じている入門〜初級エンジニア

    本の詳細を見る →
  4. 23 パターンで Spring の抽象を読む

    Factory / Strategy / Template Method など、Spring 内部で多用される古典パターンを Java で学ぶ。フレームワークのコードを読む解像度を上げる。

    Java言語で学ぶデザインパターン入門第3版
    この章の 1 冊 Java言語で学ぶデザインパターン入門第3版

    GoF 23パターンをJavaサンプルとUMLで体系的に習得する

    この本で身につくこと
    • GoF 23パターン全てをクラス図(UML)と短いJavaコードの対応として説明できる
    • Iteratorパターンによる「実装に依存しない走査」やStrategyパターンによる「アルゴリズムの交換可能性」など、各パターンの解決する問題を自分の言葉で語れる
    • 抽象クラスとインターフェースの使い分けをパターン適用の文脈で判断できる
    • Singletonのスレッドセーフ問題、Observerの過剰通知など、各パターンの落とし穴を把握した上で採用判断できる

    想定読者: Javaの基礎文法は読めるが、オブジェクト指向設計の判断軸が言語化できていない中級手前のエンジニア。設計レビューで「なぜこのクラス構造か」を説明できるようになりたい人。

    本の詳細を見る →
  5. レビュー耐性のある Java に仕上げる

    不変性・API 設計・例外・並行性の定石をまとめた必読書。Spring Boot 上で書くアプリを、保守性と安全性の観点で底上げする到達点として置く。

    Effective Java
    この章の 1 冊 Effective Java

    JavaのイデオムとAPIデザインからベストプラクティスを体得する

    この本で身につくこと
    • try-with-resourcesを使ってリソース解放漏れをコンパイラに保証させる実装ができる
    • ラムダ・ストリームAPIを活用した関数型スタイルのデータ処理コードを書ける
    • ジェネリックスの型安全な設計でコンパイル時に型エラーを検出できる
    • enumと@Overrideアノテーションなど、Java固有のイデオムを正しく適用できる

    読み終えると Before(読む前): 例外時のリソース解放にtry-finallyを手書きしており、ネストが深くなるとclose()漏れのリスクを抱えていた After(読み終えた後): try-with-resourcesのイデオムで記述量を減らしつつ、リソース解放をコンパイラに保証させられる

    想定読者: Java中級〜上級エンジニアで、より高品質なコードを書くために設計・実装のベストプラクティスを体系的に習得したい人

    前提知識: Javaの基本文法(クラス・継承・インタフェース・例外の実装経験) / オブジェクト指向の基本概念(カプセル化・継承・ポリモーフィズム) / Java 8以降のラムダ式・Stream APIの基本的な書き方(第7章を効果的に読む前提として)

    本の詳細を見る →