【参加メモ】第一回 エリック・エヴァンスのドメイン駆動設計 読書会
最近DDDの勉強会をよく見るなぁ、と機運が高まっていたので参加
evans-ddd-book-read.connpass.com
今回は初回ということで全体構成の紹介とまえがき・第1章の解説でした。
主催者の@moaieeeさんが時折笑いを交えながら、全体的に緩やかな雰囲気で進められました。
詳細な説明よりは、イメージを掴んでもらうようなゆるいスタイルの解説的な感じで進みそう(な予感)です。
全体構成
1,2部の話は正直つまらないかも、とのこと
自分の理解度に応じて参加回を決めてOK
- 1部 用語の定義と動きの紹介
- 2部 モデル駆動開発の基本構成の紹介
- 3部 実用的なモデルの設計と実装の話
- 4部 より大規模な設計の話
まえがき
モデルとは何か?
あるものを抽象化したもの
モデルを蒸留する
モデルまでだけでなく、実装までやってくぞ、という話
第1章
構成
やり方
モデルを取り出す5つのポイント
モデル化
モデルを取り出す流れ
PCB回路の例
実装化
モデルを適用したコード
貨物の運搬の例
モデルを取り出す
〜知識を噛み砕く〜
PCB回路の例
ヒアリングから徐々にモデルを作り出していく
人により言葉の定義が違う
ヒアリングを進めるうちに目的が曖昧になりがち。。
→実は、回路の遅延回数を知りたい。それを表すモデルが欲しいことがわかる。
ここでは何が言いたかった(と思われる)こと
設計者へのヒアリングを繰り返すことで、知識を噛み砕き、 モデルを洗練させていきましたよ、という例。
最初から完璧なモデルはできないので、継続的な学習により深いモデルが出来上がっていく。
【参考】
- ユースケース駆動開発実践ガイド
- ICONICプロセス
- ラショナル統一プロセス
船に載せる貨物の例
最初の簡単な例を作る (航海に貨物を載せる) ↓ 制限の追加 (最大予約数を実装に反映) ↓ 新たな制限の追加 (さらに実装に反映) ↓ (洗練を繰り返す)
【参考】
- [DDD]ドメイン駆動設計で実装を始めるのに一番とっつきやすいアーキテクチャは何か
- 久保秋 真さん
-
ドメインエキスパートとどうコミュニケーションを取るのか問題
例:カスタマーサポートなど
早くも2回目が公開されてる
evans-ddd-book-read.connpass.com
こちらも気になる ddd-community-jp.connpass.com