目的地
「Web APIテスト技法」に至る道筋
この本にたどり着くために、先に読んでおきたい本を依存関係から逆算しました。基礎から順に並んでいます。
ここまでの道筋(7冊)
なぜ先に読むのか: Java の文法と基本構文を一通り書けるようになったら、次は「動く」だけでなく「読める・変更しやすい」コードへ意識を引き上げる。クリーンコードは命名・関数分割・コメントの原則を与え、独学では身につきにくい品質感覚の土台を作る。
なぜ先に読むのか: 個々の関数やクラスをきれいに書けるようになったら、Java のコードで繰り返し現れる設計課題に名前のついた解法=デザインパターンを学ぶ番だ。本書は GoF の 23 パターンを Java の実装で体感させ、再利用可能な設計の語彙とクラス間の関係を意図を持って組み立てる力を養う。
なぜ先に読むのか: クラス単位のパターンを使いこなせるようになったら、システム全体の依存の向きと境界をどう設計するかという上位の視点へ広げる。クリーンアーキテクチャは詳細を外側へ追いやり、ビジネスルールを中心に据える依存性のルールを与える。
なぜ先に読むのか: OS が提供するプロセス・I/O・メモリの仕組みを知っておくと、Spring が裏で何を抽象化しているかが見える。低レイヤーの理解はフレームワークをブラックボックスにせず、性能問題や障害の切り分けに効いてくる。
なぜ先に読むのか: Spring でひと通りアプリを組めるようになると、フレームワークに引きずられた設計(DB やフレームワーク中心)の限界に気づく。クリーンアーキテクチャはビジネスルールをフレームワークから独立させる依存性のルールを与え、長期的に変更に強い構造を選べるようにする。
なぜ先に読むのか: 依存の向きを制御するアーキテクチャを学ぶと、そのテスタビリティの恩恵を最大化するテスト設計の原則が欲しくなる。単体テストの考え方/使い方は「良いテストとは何か」を定義し、アーキテクチャが生む疎結合をテストの価値に変換する。
なぜ先に読むのか: 単体テストの原則を身につけたら、サービス境界をまたぐ API のテスト戦略へ視野を広げる。Testing Web APIs はテストピラミッドの上位――統合・契約・E2E――をどう配分するかを示し、単体テストだけでは守れない API の信頼性を確保する。