ブログのネタにもなれるように話をまとめたので雑に使い回すときのために…
資料
内容
社内でリクエストがあり「DDDってどういうことかざっくり知りたい」と言われたので、"ドメイン”というフレーズを中心にドメイン駆動設計をするに当たりまずは頭に入れておきたい共通言語(DDDのユビキタス言語)をベースにまとめました。
また、根底の部分はあんざいゆきさんの下記ブログ内容を参考にさせていただいております。
Y.A.M の 雑記帳: ドメイン駆動設計について DroidKaigi 2017 で登壇しました。
内容としては俗に言うエヴァンス本のフレーズをベースに、「ドメインってURLの最初の部分のことですよね?」というぐらいの人向けにフレーズの紹介から根底のワードを拾って説明したものです。
以下の本のエッセンスを混ぜ込んでいます。
伝えたいこと
概ね最後のまとめにも書きましたし割と多く人が語られていることですが、以下の観点でまとめました。
- 「***を使えばDDDになる」のような誤解から入らないように、ドメイン駆動設計の根底の考え方から取り上げた
- Railsを普段から使うメンバーが多いので、RailsのActiveRecordとしてのModelとドメインモデルに関しての違いがある部分がわかるような資料を心がけた
資料作成時の参考リンク
- [ 技術講座 ] Domain-Driven Designのエッセンス 第1回|オブジェクトの広場
- モデルとは何であって、何でないのか #kichijojipm - Speaker Deck
- ドメインモデルのつくり方 #5000dai - Speaker Deck
- 実践DDD本 第3章「コンテキストマップ」~「境界づけられたコンテキスト」の関係を俯瞰する地図~ (1/3)|CodeZine(コードジン)
- Active Recordから考える次の10年を見据えた技術選定 / Architecture decision for the next 10 years at PIXTA - Speaker Deck
- ドメイン駆動設計の比類なきパワーでRailsレガシーコードなど大爆殺したるわあああ!!! - Qiita