- Chapter 01 はじめに
- Chapter 02 古典ドメインモデルパターン
- Chapter 03 その構成の何が問題か
- Chapter 04 アウトサイドイン開発とBean Validation
- Chapter 05 パースとバリデーションを同時に行う
- Chapter 06 二つのアプローチの比較
- Chapter 07 Always-Valid Layer という切り口
- Chapter 08 未検証→検証済みという状態遷移
- Chapter 09 ドメインモデルから関心を分離する
- Chapter 10 データ詰め替え戦略の全体像
- Chapter 11 結合強度と距離のバランス
- Chapter 12 デコーダがレイヤーをつなぐ
- Chapter 13 既存コードへの導入
- Chapter 14 設計の重さを測る判断基準
- Chapter 15 付録: Raoh APIリファレンス(本書で使用するもの)
- Chapter 16 付録: 参考文献
本書は13章と付録で構成されています。
- 「問題の正体」(1〜2章): 古典ドメインモデルパターンがどう見えるか、そこに潜む問題は何かを整理します。
- 「Parse, Don't Validate」(3〜5章): Bean Validation の限界と、パースしてバリデーションと型変換を同時に行う Raoh デコーダのアプローチを示します。
- 「Always-Valid Layer」(6〜8章): 「常に正しいデータだけが流れる層」という切り口から、状態遷移の型表現と、関心を分離したドメインモデル(record)を示します。
- 「結合のバランス」(9〜11章): レイヤー間の詰め替え戦略と結合強度・距離の軸を整理し、デコーダがレイヤー間の接点として機能することを示します。
- 「実践」(12〜13章): 既存コードへの段階的な導入手順と、どの設計を選ぶかの判断基準を示します。
- 付録: Raoh API リファレンスと参考文献。
初めて読む方は1章から順に読み進めることをお勧めします。既に Parse, Don't Validate や Always-Valid Layer に馴染みがある方は、9章から読み始めても意味が通るように書いています。