Kotlin × Spring Boot API 開発ガイド
このガイドについて
Kotlin と Spring Boot で、JSON を返す API サーバーを作るための全 29 章のガイドです。Kotlin を書いたことがない人が、このガイドだけで言語を身につけ、注文 API を本番で運用できる形まで作れることを目指します。
前半と後半で扱うものが違います。第 1 部の 6 章は Kotlin の入門で、Spring Boot は出てきません。型と null 安全から、クラス、コレクションとジェネリクス、例外までを順に扱います。第 2 部からは Spring Boot を使い、EC サイトの注文システムを 1 つ育てながら、入力の検証、エラーレスポンス、認証、トランザクション、非同期処理、運用へと進みます。
- Kotlin の入門から始める: 第 1 部で Kotlin の言語仕様をひととおり扱います。Kotlin と Java の経験は要りません
- 一貫した題材: 注文・注文明細・商品・在庫からなる EC サイトの注文システムを、第 2 部から最後まで育てます
- 動かして確かめたコード: 第 1 部のコード例は、サンプルリポジトリのテストで実行し、記事に載せた実行結果と一致することを確かめています
- 本番で効く注意点: 第 2 部から、各章の本文の後にその機能を本番で使うときの注意点を置きます
- 版: Spring Boot 4.1、Kotlin 2.3、Java 25 を対象とします
ガイドの構造
章立て
ガイドは 5 部構成です。第 1 部から順に公開しており、未公開の章は「執筆中」と書いています。
第 1 部 Kotlin 入門
| 章 | 扱うこと |
|---|
| 01 はじめに | このガイドで作る注文 API の全体像。JDK・IntelliJ IDEA・サンプルリポジトリの用意 |
| 02 Kotlin の基本 | val と var、基本型、null 安全、等価性、式としての if・when・try、範囲とループ |
| 03 関数とラムダ | 名前付き引数、高階関数とラムダ、関数参照、拡張関数、スコープ関数、inline |
| 04 クラスとオブジェクト | プロパティ、継承と interface、data class、value class、enum、sealed、object、委譲 |
| 05 コレクションとジェネリクス | 読み取り専用と可変のコレクション、List・Set・Map の操作、Sequence、変位、reified |
| 06 例外と失敗の表し方 | require・check・error、runCatching と Result、sealed で失敗を型にする |
第 2 部 Spring Boot の基礎
| 章 | 扱うこと |
|---|
| 07 Spring Boot の骨格 | 執筆中 |
| 08 テーブル設計とマイグレーション | 執筆中 |
| 09 Spring Data JDBC で読み書きする | 執筆中 |
| 10 ルーティングと最初のエンドポイント | 執筆中 |
| 11 入力の検証 | 執筆中 |
| 12 サービス層と DI | 執筆中 |
| 13 レスポンスの形 | 執筆中 |
| 14 一覧 API | 執筆中 |
| 15 エラーレスポンス | 執筆中 |
| 16 テスト | 執筆中 |
第 3 部 認証と認可
| 章 | 扱うこと |
|---|
| 17 認証 | 執筆中 |
| 18 認可 | 執筆中 |
| 19 フィルタ・レート制限・CORS | 執筆中 |
第 4 部 整合性と非同期
| 章 | 扱うこと |
|---|
| 20 トランザクションと並行性 | 執筆中 |
| 21 イベント | 執筆中 |
| 22 非同期処理 | 執筆中 |
| 23 非同期処理を本番で動かす | 執筆中 |
| 24 コルーチンで並行に呼ぶ | 執筆中 |
| 25 キャッシュ | 執筆中 |
第 5 部 運用
| 章 | 扱うこと |
|---|
| 26 ファイルの保存と配信 | 執筆中 |
| 27 定期処理 | 執筆中 |
| 28 ログ・監視・デプロイ | 執筆中 |
| 29 おわりに | 執筆中 |
対象読者
- 何らかの言語でプログラミングをしたことがあり、Kotlin と Spring Boot は初めての人
- Kotlin で API サーバーを書くことになり、言語と Spring Boot を一度に身につけたい人
- Spring Boot のチュートリアルは終えたが、本番で何に気をつければよいか分からない人
前提知識
| 必須度 | 知識 | 補足 |
|---|
| 必須 | 何らかの言語で、変数・条件分岐・繰り返し・関数を書いたことがある | 全章 |
| 必須 | ターミナルの基本操作 | 第 1 章でコマンドからテストを動かします |
| 推奨 | Git でリポジトリを clone できる | 第 1 章でサンプルリポジトリを取得します |
| 推奨 | SQL の SELECT / INSERT / UPDATE が読める | 第 2 部。書けなくてかまいません |
| 推奨 | HTTP の GET / POST と JSON を聞いたことがある | 第 2 部 |
| 不要 | Kotlin・Java・Spring の経験 | 本ガイドで基礎から解説します |
推奨される読み方
- Kotlin が初めて: 第 1 章から順に読み、コード例をサンプルリポジトリで動かしながら進めてください。動かし方は第 1 章にあります
- Kotlin は書ける: 第 1 部は章立て表の「扱うこと」を見て、知らない項目の節だけを読み、第 2 部から本格的に始めてください
- 辞書的に使いたい: 上の章立て表から該当する章を直接開いてください
関連ガイド
それでは はじめに から始めましょう。