“実践ドメイン駆動設計”はドメイン駆動設計を実際の設計に応用する方法を知りたい人に向いている本です。
“エリック・エヴァンスのドメイン駆動設計”を読んだ後に読むべき本です。
“エリック・エヴァンスのドメイン駆動設計”を読んで実際に使うイメージが湧いた人は問題ないですが、私はもっと実例を使った解説が欲しいと思って購入しました。
A4サイズで578ページある上に、難易度は高いです。
本書のサンプルコードのメインはJavaです。GithubにはSaaSOvationのJava版とC#版のサンプルコードが公開されています。
メリット
- ドメイン駆動設計を使った開発プロジェクトの話をベースに解説しているため、”エリック・エヴァンスのドメイン駆動設計”よりドメイン駆動設計の使い方を学びやすい
- 章立てが”エリック・エヴァンスのドメイン駆動設計”に近いため照らし合わせながら読める
- 一つの問題点に対して多様な解説をしている
“一つの問題点に対して多様な解説”とは”~のように設計もできる”、”例えば〜”、”~という可能性がある”のように複数の解決手段を提示したり、例え話、性能・性質についてなどです。
読んでいて、
「考え方を身につける、変えるという事は時間がかかるものだなぁ」
としみじみ思いました。
デメリット
- 周りくどい説明や長文が多く理解しづらい
- “カウボーイの声”という挿絵付きのジョークがあるが意味が不明
- ドメインイベントの章は経験がないと理解できない可能性がある
本書もエリック・エヴァンスの本と同様1回読んだだけでは中々理解できない箇所が多々ありました。
私はRabbitMQを使ったことがあるので概ね理解できましたが、pythonでイベントを使った経験がない場合は別の文献でイベントについて学んだ方がいいかもしれません。
「実践ドメイン駆動設計」から学ぶDDDの実装入門
“実践ドメイン駆動設計”と併せて読みたい本が”「実践ドメイン駆動設計」から学ぶDDDの実装入門”です。
“実践ドメイン駆動設計”の要点を端的にまとめています。イラストや図も多めでわかりやすく整理されています。
本書のおかげで”実践ドメイン駆動設計”の理解が深まりました。
最初から”実践ドメイン駆動設計”とセットで”「実践ドメイン駆動設計」から学ぶDDDの実装入門”を読む事をおすすめします。
まとめ
“実践ドメイン駆動設計”は読みづらく難しいですが、ドメイン駆動設計を学ぶには欠かせない本です。
ドメイン駆動設計の考え方や実装方法が身につくまで何度も読む価値は大いにあると思います。
“「実践ドメイン駆動設計」から学ぶDDDの実装入門”は”実践ドメイン駆動設計”の理解を助けてくれる本です。一緒に読むと良いでしょう。
ソフトウェア設計のスキル向上を目指している人には是非読んでいただきたい本です。
コメントを残す