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
ドメイン駆動設計 第一部まとめ
Search
Go Tanaka
September 08, 2016
Programming
1
380
ドメイン駆動設計 第一部まとめ
エリックエヴァンスのDDD本の第一部のまとめ(感想)
Go Tanaka
September 08, 2016
Tweet
Share
More Decks by Go Tanaka
See All by Go Tanaka
事業を理解するために勉強したこと
tan_go238
0
1.2k
RDRAと業務と私
tan_go238
6
4.9k
エンジニアのための情報設計入門
tan_go238
10
7.7k
JVM in Action
tan_go238
1
580
Ordinary Object Pointer in JVM
tan_go238
5
5.9k
フロントエンドの基礎知識
tan_go238
28
9.9k
Reactive Microservices Architecture
tan_go238
0
220
たぶん便利なパターンマッチ
tan_go238
0
280
Other Decks in Programming
See All in Programming
SwiftUI Viewの責務分離
elmetal
PRO
1
240
Grafana Cloudとソラカメ
devoc
0
170
Grafana Loki によるサーバログのコスト削減
mot_techtalk
1
130
なぜイベント駆動が必要なのか - CQRS/ESで解く複雑系システムの課題 -
j5ik2o
12
4.1k
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
130
2024年のkintone API振り返りと2025年 / kintone API look back in 2024
tasshi
0
220
第3回 Snowflake 中部ユーザ会- dbt × Snowflake ハンズオン
hoto17296
4
370
WebDriver BiDiとは何なのか
yotahada3
1
140
コミュニティ駆動 AWS CDK ライブラリ「Open Constructs Library」 / community-cdk-library
gotok365
2
140
法律の脱レガシーに学ぶフロントエンド刷新
oguemon
5
740
さいきょうのレイヤードアーキテクチャについて考えてみた
yahiru
3
760
お前もAI鬼にならないか?👹Bolt & Cursor & Supabase & Vercelで人間をやめるぞ、ジョジョー!👺
taishiyade
6
4k
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
We Have a Design System, Now What?
morganepeng
51
7.4k
Optimizing for Happiness
mojombo
376
70k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
For a Future-Friendly Web
brad_frost
176
9.5k
Fireside Chat
paigeccino
34
3.2k
Writing Fast Ruby
sferik
628
61k
Making Projects Easy
brettharned
116
6k
Embracing the Ebb and Flow
colly
84
4.6k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Transcript
υϝΠϯۦಈઃܭ ୈ1෦·ͱΊ
ϞσϧͱԿ͔ • ໘ͷΛղܾ͢Δ্Ͱؔ࿈͢Δଆ໘ΛநԽ͠ɺɹ ͦΕҎ֎ͷཁૉΛແࢹͨ͠ݱ࣮ʹର͢Δͻͱͭͷղऍ • ιϑτΣΞͱ • ϢʔβͷԿΒ͔ͷ׆ಈؔ৺ࣄͱ͕ؔ͋Δ • Ϣʔβ͕ϓϩάϥϜΛద༻͢ΔྖҬ͕ιϑτΣΞ
ͷυϝΠϯ
ϞσϧͱԿ͔ ݱ࣮ੈք ׆ಈɾؔ৺ࣄ ׆ಈɾؔ৺ࣄ Ϟσϧ Ϟσϧ ؆ུԽɾநԽ ιϑτΣΞ ͷྖҬ
ϞσϦϯά • υϝΠϯϞσϦϯάͱϞσϧΛͰ͖Δ͚ͩ ʮ࣮ࣸతʹʯ࡞͢Δ͜ͱͰͳ͍ • ͋Δతʹैͬͯݱ࣮ͷ֓ཁΛදݱ͢Δ • ͜ͷ࡞ۀΛϞσϦϯάͱݺͿ
ͲͷΑ͏ʹϞσϧΛબ͢Δ͔ 1. Ϟσϧͱઃܭͷ֩৺͕૬ޓʹؔ࿈͠߹͏͜ͱ 2. νʔϜϝϯόશһ͕༻͢Δڞ௨ͷݴޠج൫Ͱ ͋Δ͜ͱ 3. ৠཹ͞ΕͨࣝͰ͋Δ͜ͱ
Ͳ͔͜Β࢝ΊΔ͔ʁ • ࣝΛ͔Έࡅ͘ͱ͜Ζ͔Β ”ΫϥΠΞϯτυϝΠϯΤΩεύʔτͱҰॹʹ͠߹͍ͳ͕Β ΦϒδΣΫτͷ૬ޓ࡞༻ਤΛඳ͍ͨΓͨ͠” ”༻ޠ๏ʹ͋ͬͨෆҰக͍͋·͍͞ɺٕज़తͳݟղͷ૬ҧΛҰ ॹʹͳͬͯղֶܾ͠ΜͰ͍ͬͨ” “ͦͷ݁ՌɺࣄΛΑΓݫີʹໃ६ͳ͘આ໌Ͱ͖ΔΑ͏ʹͳͬͨ"
ܧଓతֶश • ܧଓతֶश ෆՄܽ • υϝΠϯϞσϧͷεΩϧ • ٕज़తͳࣝͷ্ • ͍·औΓΜͰ͍Δ۩ମతͳυϝΠϯʹ͍ͭ
ֶͯश͢Δ
ϢϏΩλεݴޠ • ڞ௨ݴޠͷͳ͍ϓϩδΣΫτ • ʑͷٞͰ͏༻ޠ๏͕ɺίʔυʹຒΊࠐ·Ε Δ༻ޠ๏͔ΒΓ͞ΕΔ • ௨༁͕ඞཁʹͳΔ • Ϟσϧͷ֓೦Λࠞཚͤͯ͞͠·͏
• ίʔυͷഁյతͳϦϑΝΫλϦϯάʹͭͳ͕Δ
ϢϏΩλεݴޠ • ։ൃऀͷؒͰ༻͞Εͳ͚ΕͳΒͳ͍ • ݴޠΛ͏্Ͱ͕͋ΕɺΘΓͷදݱΛ༻͍ ࣮ͯݧ͢Δ • ݴޠʹର͢ΔมߋɺυϝΠϯϞσϧʹର͢Δมߋ • ίʔυͷΫϥεϝιουͷ໊લΛม͑ͨΓ;
Δ·͍Λมߋͨ͠Γ͢Δ͜ͱʹͭͳ͕Δ
υΩϡϝϯτͱਤ • ϞσϧਤͰͳ͍ • ਤ͕දݱ͍ͯ͠Δͷߟ͑ํͷࠎ֨ • ઃܭʹؔ͢Δຊ࣭తͳৄࡉɺίʔυʹ͓͍ͯͱΒ͑ΒΕΔ • υΩϡϝϯτίʔυձͷදݱΛิΘͳ͚Ε͍͚ͳ͍ •
ίʔυͰදݱͰ͖͍ͯΔͷΛυΩϡϝϯτͰ͢Δ͖Ͱ ͳ͍ • υΩϡϝϯτৗʹ࠷৽ͰϓϩδΣΫτͷ׆ಈʹऔΓࠐ·Ε͍ͯͳ ͚ΕͳΒͳ͍ʢϓϩδΣΫτͷ׆ಈͷҰ෦Ͱ͋Δ͜ͱʣ
Ϟσϧͱ࣮Λ݁ͼ͚ͭΔ • Ϟσϧۦಈઃܭ • ڧݻͳϢϏΩλεݴޠΛࢧ͑Δ͜ͱ • υϝΠϯͱ࣮྆ํͷతʹ͑Δ୯ҰͷϞσϧΛཁٻ͢Δ͜ͱ • ΦϒδΣΫτࢦͷΑ͏ͳϞσϦϯάύϥμΠϜΛࢧ͑ΔιϑτΣ Ξ։ൃͷͨΊͷπʔϧͱݴޠ͕ඞཁ
• ίʔυΛ࡞͢Δਓ͕ϞσϧʹΛײ͍ͯ͡ͳ͍߹ɺΞϓϦ έʔγϣϯͷͨΊʹϞσϧΛػೳͤ͞Δํ๏Λཧղ͍ͯ͠ͳ͍߹ɺ ͦͷϞσϧιϑτΣΞͱແؔʹͳͬͯ͠·͏ɻ
ࠎ֨ΛΈͤΔ • Ϟσϧ͕໌Β͔ʹͳΕ • ϢʔβιϑτΣΞͷજࡏೳྗʹͬͱ৮ΕΒ ΕΔΑ͏ʹͳΓ • ;Δ·͍Ұ؏ͨ͠༧ଌՄೳͳͷʹͳΔ ͪΌΜͱϞσϧ͕ઃܭʹөͰ͖͍ͯΕɺϢʔβ͕ ιϑτΣΞ෦ʹ͍ͭͯ͋Δఔ༧ଌͰ͖Δͷ
ʹͳΔ
ୈ1෦·ͱΊ • ϝϦοτ • ༻ޠͷਖ਼֬ͳهड़ཧղ͕ϝϯόʔؒͰͰ͖ͦ͏ • ͜ΕʹΑΓ࡞ۀޙͷ༷ࠩ͠ͷݟམͱ͠ॳظஈ֊Ͱݟ͚ͭ͘͢ͳΓͦ͏ • σϝϦοτ •
ϞσϧͷϝϯςφϯείετͦΕͳΓʹߴͦ͏ • ϞσϧΛৠཹ͢ΔίετʢݴޠͷมߋɺυΩϡϝϯτͷมߋɺίʔυͷมߋʣ • ϞσϧΛมߋͨ͠ΒϦϑΝΫλϦϯάΛߦΘͳ͚Ε͍͚ͳ͍
͓ΘΓ