Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20240510_DDDとぼんやり向き合ってみる / Let's face DDD in a ...
Search
宮城築
May 13, 2024
1
19
20240510_DDDとぼんやり向き合ってみる / Let's face DDD in a dim way.
宮城築
May 13, 2024
Tweet
Share
More Decks by 宮城築
See All by 宮城築
プルリクエストがマージできない / Cannot merge pull requests
kizuku_miyagi
3
280
ここが変だよPHP(褒め言葉) 入門編 / The good thing about PHP : An introduction
kizuku_miyagi
3
510
強いチーム作りに向けて 個人ができること / What individuals can do to build a strong team
kizuku_miyagi
2
420
あの時、Java から PHP へ / Converting from Java to PHP
kizuku_miyagi
4
500
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
The Pragmatic Product Professional
lauravandoore
31
6.3k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
720
A Modern Web Designer's Workflow
chriscoyier
693
190k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
Being A Developer After 40
akosma
87
590k
Transcript
〜 Laravel で気づいた勘違い 〜 DDD とぼんやり向き合ってみる ミヤギ
特徴 ・2023 年 6 月 BABY JOB に入社 ・沖縄 からフルリモートで参画
・保活サービス を開発中 ・BUMP OF CHICKEN が好き ・PM と保育園のお弁当に挑戦中 自己紹介 宮城 築 ミヤギ@3歳児の父エンジニア|BABYJOB @KizuMiyagi
私自身の DDD 経験値 エンジニア暦 9 年(2015 年新卒) • MVC 8
年 • DDD 1 年 (=PHP/Laravel暦)
つまり 理解が間違ってる可能性大です! 多めにみてください!(言い訳)
導入
この話は Laravel とどう関係があるの?
引用:https://laravel-meetup-okinawa.connpass.com/event/314824/ Laravel MeetUp Okinawa 第16回@ギークハウス沖縄 のイベントページ
この文言をちゃんと見たことがありませんでした
Laravel で DDD やってるので ちょっと向き合ってみます (つまり Laravel の話はほとんど出てきません)
知識のおさらい
MVC(モデル・ビュー・コントローラー) ChatGPT先生に聞いてみました
MVC(モデル・ビュー・コントローラー)
MVC(モデル・ビュー・コントローラー)
MVC(モデル・ビュー・コントローラー)
MVC(モデル・ビュー・コントローラー) ざっくりいうと ユーザー側 と ロジック側 と コネクタ の 三つに責務を分ける設計思想
DDD(ドメイン駆動設計) こちらもChatGPT先生に聞いてみました
DDD(ドメイン駆動設計)
DDD(ドメイン駆動設計)
DDD(ドメイン駆動設計) ざっくりいうと ビジネスで解決したいこと(≒ドメイン)を そのまま反映する設計思想
ここで沸いた疑問
私自身の DDD 経験値 エンジニア暦 9 年(2015 年新卒) • MVC 8
年 • DDD 1 年 (=PHP/Laravel暦) DDD vs MVC この構図ってあってる・・?
None
None
None
ざっくりいうと 複雑なデータを適切に構造化し データの整合性を優先する設計思想
DDD(ドメイン駆動設計) vs DDD (データ駆動設計) らしい
自分なりに整理し直してみる ビュー(V) モデル(M) コントローラー(C) ドメイン層 インフラ層 アプリケーション層 MVC と DDD
(ドメイン駆動設計) の共存
ということで訂正します🙇
私自身の DDD 経験値(最新版) エンジニア暦 9 年(2015 年新卒) • データ駆動設計 8
年 • ドメイン駆動設計 1 年 (=PHP/Laravel暦) DDD —
・・・本当に?🤔
引用:LaravelにDDDを導入する (https://qiita.com/nishiumidaina/items/61921c9e2fc9b4f5ec6e)
引用:LaravelにDDDを導入する (https://qiita.com/nishiumidaina/items/61921c9e2fc9b4f5ec6e) V C M あってそう
まとめ
• Laravel は MVC のWebアプリケーション開発用フレームワーク ◦ 疑ってごめんなさい、勉強不足でごめんなさい 🙇 • MVC
と DDD は共存できる (というか共存してた) ◦ 勘違いが解消されました 🎉 まとめ
ご清聴ありがとうございました Special Thanks ! ChatGPT