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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
宮城築
May 13, 2024
54
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
20240510_DDDとぼんやり向き合ってみる / Let's face DDD in a dim way.
宮城築
May 13, 2024
More Decks by 宮城築
See All by 宮城築
プルリクエストがマージできない / Cannot merge pull requests
kizuku_miyagi
3
580
ここが変だよPHP(褒め言葉) 入門編 / The good thing about PHP : An introduction
kizuku_miyagi
3
850
強いチーム作りに向けて 個人ができること / What individuals can do to build a strong team
kizuku_miyagi
2
660
あの時、Java から PHP へ / Converting from Java to PHP
kizuku_miyagi
4
630
Featured
See All Featured
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
280
A Modern Web Designer's Workflow
chriscoyier
698
190k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
67k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
360
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
620
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
230
Side Projects
sachag
455
43k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
500
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
230
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
330
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Test your architecture with Archunit
thirion
1
2.3k
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