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
次ステップへ進む 2〜3年目エンジニアへ 「ドメイン駆動設計をじめよう」
Search
tomohiko.kuzuba
September 13, 2024
0
4
次ステップへ進む 2〜3年目エンジニアへ 「ドメイン駆動設計をじめよう」
Shinjuku.rb #95 LT会!心の技術書を紹介しよう!
https://shinjukurb.connpass.com/event/328400/
tomohiko.kuzuba
September 13, 2024
Tweet
Share
More Decks by tomohiko.kuzuba
See All by tomohiko.kuzuba
RubyKaigiで得られる10の価値 〜Ruby話を聞くことだけが RubyKaigiじゃない〜
tomohiko9090
0
150
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
Speed Design
sergeychernyshev
32
1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Why You Should Never Use an ORM
jnunemaker
PRO
57
9.4k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Code Review Best Practice
trishagee
68
18k
RailsConf 2023
tenderlove
30
1.1k
Making the Leap to Tech Lead
cromwellryan
134
9.3k
The Cost Of JavaScript in 2023
addyosmani
51
8.4k
Bash Introduction
62gerente
614
210k
Transcript
© Link and Motivation Group 次 ステップへ進む 2〜3年目 エンジニアへ 「ドメイン駆動設計を
じめよう」 株式会社リンクアンドモチベーション 葛葉 朋彦
2 © Link and Motivation Group 葛葉朋彦(くず ともひこ) 自己紹介 経歴
2022年〜 ・株式会社リンクアンドモチベーション入社 ・モチベーションクラウド バックエンドエンジニアを担当 ・バドミントン ・フェス、カラオケ、爬虫類など 趣味
3 © Link and Motivation Group 紹介したい本
4 © Link and Motivation Group 読む前と読んだ後 一部でもDDDを取り入れられそうだ! DDDを取り入れるかどうか考えることにこそ意味がありそう! DDDについて聞いたことがあるが、よく分からない
.. 「良い設計」と「悪い設計」 違い 何な だろうか ... Before After
5 © Link and Motivation Group 〜学び〜 DDD 必要な部分だけ取り入れることができる
6 © Link and Motivation Group DDD 基本概念 引用: 『ドメイン駆動設計を
じめよう』 p.11 • DDD(ドメイン駆動設計) 、システム設 計 前に、事業領域を明確に定義し、そ れを基に設計を進めていく考え方です。 • 事業領域を「競合と 差別化」と「業務ロ ジック 複雑さ」 2軸で分類します。こ れにより、ど 領域が中核的であり、ど 領域が一般的、補完的であるか を っきりさせます。
7 © Link and Motivation Group 引用: 『ドメイン駆動設計を じめよう』 p.191
学び 「DDD 必要な部分だけ取り入れることができる 」 • 複雑な業務領域に ドメインモデルなど 高度な実装が適していますが、 補完的、一般的な領域に 簡単な実装 が最適です。 • こ 本で 、全てに複雑な設計を適用 する必要 なく、 業務に応じて実装方式を使い分ける こ とが推奨されています。
8 © Link and Motivation Group • ドメインモデル 、複雑さを値オブジェク トと集約で内部をカプセル化します。
• 業務ロジック 記述が重複せず、デー タに一貫性を持たせること ができます。 学び 「DDD 必要な部分だけ取り入れることができる 」 引用: 『ドメイン駆動設計を じめよう』 p.106
10 © Link and Motivation Group まとめ こ 本を読んで 学び
• 事業領域から実装方式を考え、必要な部分だけでも DDD を取り入れることができそう • DDDを取り入れることができれ 、複雑な業務領域もう まく表現することができそう